推荐应用
帖子DIY添加调用主题标签的方法 for Discuz! X系列
发布于 2015-05-05
昨天,有朋友和我说调用不出来主题标签,有扩展可以用,但是得花钱,而且功能不完善,故自己研究了下,发布出来。
测试环境是X3.2,本模块应该是兼容X系列的
修改文件:source/class/forum/block_thread.php
搜索
测试环境是X3.2,本模块应该是兼容X系列的
修改文件:source/class/forum/block_thread.php
搜索
'todayposts' => array('name' => lang('blockclass', 'blockclass_thread_field_todayposts'), 'formtype' => 'text', 'datatype' => 'int'),
在下方添加'keywords' => array('name' => "主题标签", 'formtype' => 'text', 'datatype' => 'string'),
再搜索if($style['getsummary']) {
$threadtids[$data['posttableid']][] = $data['tid'];
}
再下方添加$sql_dzlab = "select * from ".DB::table("forum_post")." where first=1 and tid=".$data['tid'];
$res = DB::fetch_first($sql_dzlab);
$tags = explode("\t",$res['tags']);
$keywords = '';
foreach($tags as $tag){
$array = explode(",",$tag);
if($array[1])
$keywords .= ''.$array[1].',';
}
$keywords = substr($keywords,0,-1);
这里添加的样式是带有链接的,如果不加链接,可以改成$sql_dzlab = "select * from ".DB::table("forum_post")." where first=1 and tid=".$data['tid'];
$res = DB::fetch_first($sql_dzlab);
$tags = explode("\t",$res['tags']);
$keywords = '';
foreach($tags as $tag){
$array = explode(",",$tag);
if($array[1])
$keywords .= $array[1].',';
}
$keywords = substr($keywords,0,-1);
再搜索'dateline' => $data['dateline'],
在下方添加'keywords' => $keywords,
后台,工具,更新DIY模块缓存,然后正常使用帖子模块即可发现可以使用{keywords}调用主题标签了