wordpress在本机上调试了一个星期后,终于把WP升级到了2.3。因为native tag support的原因,不得不放弃了UTW这个超级好用的插件,我拿UTW做得一些SEO工作也得全部作废了。反正我就是不喜欢Wordpress的越来越华而不实,从2.1开始就没干过正经事儿了,反而让我越发不满意wordpress的运行效率。抱怨归抱怨,以下是调试WP2.3中碰到的一些问题,主要是和模板相关的。

糟糕的Tag体验

WP提供了原生的tag支持,不过这个the_tags()函数实在是有够弱的,一是它必须是strictly in the loop,而我的模板single page里的metadata都是显示在sidebar中的,the_category()the_time()都能工作的很好,就the_tags()显示为空。我又不想把tag放到日志的loop里,最后只能在sidebar里做个rewind操作了,代码如下:

<?php if(is_single()) { ?>
<?php rewind_posts(); ?>
<?php while(have_posts()): the_post(); ?>
<h2 id="metadata">Metadata</h2>
<dl>
<dt>Metadata</dt>
<dd class="date" title="postdate"><?php the_time('Y.n.j') ?> / <?php the_time('ga') ?></dd>
<dd class="category" title="category"><?php the_category(', ') ?></dd>
<dd class="tag" title="tag"><?php the_tags('',', ','') ?></dd>
<?php endwhile; ?>
<?php } ?>

原本在UTW下,对于没有tag的日志可以指定相应的tag替代文字,例如”No Tag”,但是在WP里,the_tags()弱到没有tag也输出个null值来。我自然是希望在没有赋予日志tag的情况下,tag栏里显示”No Tag”信息啦。看了下wordpress wp-includes目录下的category-template.php文件里get_the_tags()函数,其中有这么一段:

if ( empty( $tags ) )
	return false;
return $tags;

get_the_tags()函数在没有找到tag的情况下会返回为false值。我把the_tags()的调用改成了以下这句,这样就能在没有tag的情况下显示”No Tag”了:

<?php if(!(get_the_tags())) echo 'No Tag'; else the_tags('',', ',''); ?>

删除UTW

用WP2.3导入了UTW的tag之后,就可以把UTW彻底移出了,UTW在数据库里添加了wp_post2tag, wp_tag_synonyms, wp_tags 这三个表,在mysql里用以下命令直接删除吧(建议先备份数据库):

mysql> DROP TABLE wp_post2tag,wp_tag_synonyms,wp_tags;

插件相关

不喜欢WP-PageNavi新版自作多情添加CSS样式文件,我的CSS文件都是用gzip压缩过的了,再说我更愿意自己定义WP-PageNavi的样式。编辑pagenavi.php文件,注释掉以下这段就是了:

### Function: Page Navigation CSS
#add_action('wp_head', 'pagenavi_css');
#function pagenavi_css() {
#       echo "\n".'<!-- Start Of Script Generated By WP-PageNavi 2.20 -->'."\n";
#       echo '<link rel="stylesheet" href="'.get_option('siteurl').'/wp-content/plugi
ns/pagenavi/pagenavi-css.css" type="text/css" media="screen" />'."\n";
#       echo '<!-- End Of Script Generated By WP-PageNavi 2.20 -->'."\n";
#}

Tiger Style Administration是个很漂亮的WP后台主题,不过在2.3下显示似乎有点问题,最明显的就是footer位置偏了。我稍微修改了下它的css文件,喜欢这个插件的又想在2.3下正常使用的直接下载我修改过的CSS文件吧。

2 Reponses So Far ↓

  1. Hermy:

    er,你upgrade得我看着都有问题了,再好好调吧

  2. Hermy:

    yi,发了个comment之后正常了。。

Leave a Reply ↓