很多站长希望在DIY的时候调用主题标签TAG,Discuz!默认是不支持调用TAG的,本文介绍如何修改DIY源码实现我们所需要的功能:
修改文件:source/class/block/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']; }
再下方添加
$tags = DB::result_first("select tags from ".DB::table("forum_post")." where first=1 and tid=".$data['tid']); $tags = explode("/t",$tags); $keywords = ''; foreach($tags as $tag){ $array = explode(",",$tag); if($array[1]) $keywords .= '<a title="'.$array[1].'" href="misc.php?mod=tag&id='.$array[0].'" target="_blank">'.$array[1].'</a>,'; } $keywords = substr($keywords,0,-1);
这里添加的样式是带有链接的,如果不加链接,可以改成:
$tags = DB::result_first("select tags from ".DB::table("forum_post")." where first=1 and tid=".$data['tid']); $tags = explode("/t",$tags); $keywords = ''; foreach($tags as $tag){ $array = explode(",",$tag); if($array[1]) $keywords .= $array[1].','; } $keywords = substr($keywords,0,-1);
再搜索 [php] view plain copy 'fields' => array(
在下方添加
'keywords' => $keywords,
后台,工具,更新DIY模块缓存,然后正常使用帖子模块即可发现可以使用{keywords}调用主题标签了