问题见:http://www.fluxbb.cn/forum/post/138/#p138
中文的子论坛以及帖子名称成了空的,试着读了下代码,发现是一个sef_friendly的函数的问题,去掉,可以显示中文的URL地址,但是寻思着不安全(谁让你去掉人家一个函数的);一不做二不休,找个wp的拼音插件,然后直接编辑了FluxBB的内核代码——俺知道错了,应该用extension的形式,谁让咱还不熟悉呢,因此这篇日志仅仅做个记录而已,不推荐使用。
1、下载拼音插件,上传到FluxBB的目录下(除了pinyin-slug.php我都穿到inculde下面了)
2、把pinyin-slug.php的函数加到了functions.php里,同时做了点修改,函数如下:
//added by Mingxing Chen 9/9/2008
function pinyin_slugs($title) {
//global $wpdb;
require_once FORUM_ROOT.’include/class.Chinese.php’;
$codeTablesDir = dirname(__FILE__).”/config/”;
$chs = new Chinese(”UTF8″,”GB2312″, $title,$codeTablesDir);
$title = $chs->ConvertIT();
$chs = new Chinese(”GB2312″,”PinYin”,$title,$codeTablesDir);
$title = $chs->ConvertIT();
$title = str_replace(” “,”",$title);
return $title;
}
//end
3、编辑index.php 162行,替换sef_friendly($cur_forum['forum_name'])为sef_friendly(pinyin_slugs($cur_forum['forum_name']))
4、编辑viewforum.php和viewtopic.php,替换sef_friendly($cur_topic['forum_name'])为sef_friendly(pinyin_slugs($cur_forum['forum_name'])),sef_friendly($cur_topic['subject'])替为sef_friendly(pinyin_slugs($cur_topic['subject']))
5、因为有个warning,顺便编辑了class.Chinese.php的169行,加了个变量声明$bindata = “”;
over
先这样,做个记录