Discuz!论坛教程之DIY调用主题标签TAG修改方法

discuz教程
很多站长希望在DIY的时候调用主题标签TAG,Discuz!默认是不支持调用TAG的,本文介绍如何修改DIY源码实现我们所需要的功能:修改文件:source/class/block/forum/block_thread.php搜索[php] view plain copy 'todayposts' => array('name' => lang('blockclass', 'blockclass_thread_field_todayposts'), 'formtype' => 'text', 'datatype' => 'int'), 在下方添加[php] view plain copy 'keywords' => array('name' => "主题标签", 'formtype' => 'text', 'datatype' => 'string'), 再搜索[php] view plain copy if($style['getsummary']) { $threadtids[$data['posttableid']][] = $data['tid']; } 再下方添加[php] view plain copy $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); 这里添加的样式是带有链接的,如果不加链接,可以改成:[php] view plain copy $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( 在下方添加[php] view plain copy 'keywords' => $keywords, 后台,工具,更新DIY模块缓存,然后正常使用帖子模块即可发现可以使用{keywords}调用主题标签了

标签: