wordpress插件Simple Tags中文tag标签重复问题bug修正
自从安装标签管理插件Simple Tags后的这几天感觉一直用的很方便,每撰写完一篇日志文章,可以直接在撰写后台调用已经存在的TAG标签,而不必手动输入。但今天发现用Simple Tags标记的TAG和以前wordpress系统默认的TAG标签不兼容BUG,即使是同一标签(没用slug英文缩略名和用过slug而中文名相同的标签),造成了相同中文名标签重复问题。具体解决方法如下。
参考wpchina上一篇文章的方法:
1. 打开 <WordPress>/wp-includes/taxonomy.php ,大约 746 行附近:
if ( '' === $term = sanitize_title($term) )
return 0;
$where = $wpdb->prepare( "t.slug = %s", $term );
修改为:
if ( '' === $sanitized = sanitize_title($term) )
return 0;
if ( 'post_tag' === $taxonomy ) {
$where = $wpdb->prepare( "(t.slug = %s OR t.name = %s)", $sanitized , $term );
} else {
$where = $wpdb->prepare( "t.slug = %s", $sanitized );
}
2. 打开 <WordPress>/wp-admin/wp-includes/taxonomy.php ,大约 136 行附近:
$tags_to_edit = join( ', ', $tag_names );
修改为:
$tags_to_edit = join( ',', $tag_names );
也就是去掉一个空格。
发现按这种方法要注意一个小问题,安装Simple Tags之后撰写的文章里面的TAG如果要想和以前WP默认TAG保持兼容,文章撰写后台添标签时必须调用Simple Tags“显示一键标签”添加以前用过的标签,因为在这样在每个标签后加一个逗号,由于如果只有一个标签的话,我总是喜欢把后面的分隔逗号去掉,而不能和以前标签兼容,汗。
说到这里,你应该明白问题所在了,如果自己手动添加已经存在的标签的话,在后面加一个逗号,即使只有一个标签。当然也可以直接调用Simple Tags功能。忽忽,说那么多,又感觉啰嗦了。
文章来源:睡到自然醒blog[http://www.dreamfreeblog.com]
文章链接地址: http://www.dreamfreeblog.com/wordpress-plugin-simple-tags-bug-142.html 收藏本文到网摘:

[...] 即可。不包含双引号。其它的Simple Tags 问题如中文标签重复可参考这篇文章。 转载请保留以下信息:文章来源:睡到自然醒blog[http://www.dreamfreeblog.com] [...]