威宁热线

威宁团菜到家

[教程分享] DIY调用主题标签TAG修改方法

[复制链接]
威宁热线 发表于 2021-2-21 21:10:58 | 显示全部楼层 |阅读模式
很多站长希望在DIY的时候调用主题标签TAG,Discuz!默认是不支持调用TAG的,本文介绍如何修改DIY源码实现我们所需要的功能:
修改文件:
游客,如果您要查看本帖隐藏内容请回复

搜索:
  1. 'todayposts' => array('name' => lang('blockclass', 'blockclass_thread_field_todayposts'), 'formtype' => 'text', 'datatype' => 'int'),
复制代码
在下方添加:
  1. 'keywords' => array('name' => "主题标签", 'formtype' => 'text', 'datatype' => 'string'),
复制代码
两搜索:
  1. if($style['getsummary']) {
  2.     $threadtids[$data['posttableid']][] = $data['tid'];
  3. }
复制代码
再在下方添加:
  1. $tags = DB::result_first("select tags from ".DB::table("forum_post")." where first=1 and tid=".$data['tid']);
  2. $tags = explode("\t",$tags);
  3. $keywords = '';
  4. foreach($tags as $tag){
  5.                 $array = explode(",",$tag);
  6.                 if($array[1])
  7.                 $keywords .= '<a title="'.$array[1].'" href="misc.php?mod=tag&id='.$array[0].'" target="_blank">'.$array[1].'</a>,';
  8. }
  9. $keywords = substr($keywords,0,-1);
复制代码
这里添加的样式是带有链接的,如果不加链接,可以改成:
  1. $tags = DB::result_first("select tags from ".DB::table("forum_post")." where first=1 and tid=".$data['tid']);
  2. $tags = explode("\t",$tags);
  3. $keywords = '';
  4. foreach($tags as $tag){
  5.                 $array = explode(",",$tag);
  6.                 if($array[1])
  7.                 $keywords .= $array[1].',';
  8. }
  9. $keywords = substr($keywords,0,-1);
复制代码
再搜索:
  1. 'fields' => array(
复制代码
在下方添加:
  1. 'keywords' => $keywords,
复制代码
后台,工具,更新DIY模块缓存,然后正常使用帖子模块即可发现可以使用{keywords}调用主题标签了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表