Discuz!大师网

搜索
查看: 1426|回复: 0

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

[复制链接]
发表于 2017-5-9 09:07:00 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
很多站长希望在DIY的时候调用主题标签TAG,Discuz!默认是不支持调用TAG的,本文介绍如何修改DIY源码实现我们所需要的功能:
修改文件:source/class/forum/block_thread.php
搜索
  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}调用主题标签了

回复 马甲回复

使用道具 举报

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

本版积分规则

QQ|网站地图|小黑屋|展会网|Discuz站长论坛 |天天打卡

GMT+8, 2024-5-5 08:26 , Processed in 0.025922 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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