Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[展示] 门户 x2 tag 标签的制作

[复制链接]
litaobbs 发表于 2012-5-11 12:05:29 | 显示全部楼层 |阅读模式
本帖最后由 litaobbs 于 2012-5-14 13:20 编辑

因为工作需要,自己研究了下,看论坛里面需求的人很多,特此分享下心得。
以下只适合 X2 门户,其他版本,没有测试。按照以下思路修改其他版本,应该问题不大。

第一步修改文章添加Tag模版:/template/default/portal/portalcp_article.htm
找到内容代码:
  1. <div class="bm bml">
  2.          <div class="bm_h cl">
  3.                  <h2>{lang article_description}</h2>
  4.          </div>
  5.         <div class="bm_c"><textarea id="summary" name="summary" cols="80" class="pt" maxlength="120" style="width: 98.7%; height: 51px;">$article[summary]</textarea></div>
  6. </div>
复制代码
在此代码下面添加
  1. <div class="bm bml">
  2.         <div class="bm_h cl">
  3.                 <h2>Tag 标签</h2>
  4.         </div>
  5.         <div class="bm_c"><input type="text" id="tags" name="tags"  class="px" maxlength="120" size="80" value="$article[tags]" ></div>
  6.         <div class="bm_h cl">多个Tag 用|隔开,例如:西部报道|西部新闻,尾部不需要|.</div>
  7. </div>
复制代码
第二步添加pre_portal_article_title表字段
字段名:tags ,类型varchar(255), 默认为空。

在后台的站长->数据库->升级 下面的Discuz! 数据库升级,文本框,复制下面SQL:
  1. alter table pre_portal_article_title add tags varchar(255)
复制代码
注意:1、操作前备份数据库,2、查看表前缀是不是默认的,表前缀_portal_article_title。

第三步修改文章添加,修改,处理,函数/source/include/portalcp/portalcp_article.php
查找代码
  1. $_POST['pagetitle'] = censor($_POST['pagetitle']);
复制代码
在此代码下面添加
  1. $_POST['tags'] = censor(trim($_POST['tags']));
复制代码
继续查找代码
  1.         $setarr = array(
  2.                 'title' => $_POST['title'],
  3.                 'shorttitle' => $_G['gp_shorttitle'],
  4.                 'author' => $_G['gp_author'],
  5.                 'from' => $_G['gp_from'],
  6.                 'fromurl' => $_G['gp_fromurl'],
  7.                 'dateline' => intval($_G['gp_dateline']),
  8.                 'url' => $_G['gp_url'],
  9.                 'allowcomment' => !empty($_POST['forbidcomment']) ? '0' : '1',
  10.                 'summary' => addslashes($summary),
  11.                 'catid' => intval($_POST['catid']),
  12.                 'tag' => article_make_tag($_POST['tag']),
  13.                 'status' => $article_status,
  14.                 'highlight' => $style,
  15.                 'showinnernav' => empty($_POST['showinnernav']) ? '0' : '1',
  16.         );
复制代码
修改为
  1.         $setarr = array(
  2.                 'title' => $_POST['title'],
  3.                 'shorttitle' => $_G['gp_shorttitle'],
  4.                 'author' => $_G['gp_author'],
  5.                 'from' => $_G['gp_from'],
  6.                 'fromurl' => $_G['gp_fromurl'],
  7.                 'dateline' => intval($_G['gp_dateline']),
  8.                 'url' => $_G['gp_url'],
  9.                 'allowcomment' => !empty($_POST['forbidcomment']) ? '0' : '1',
  10.                 'summary' => addslashes($summary),
  11.                 'catid' => intval($_POST['catid']),
  12.                 'tag' => article_make_tag($_POST['tag']),
  13.                 'status' => $article_status,
  14.                 'highlight' => $style,
  15.                 'showinnernav' => empty($_POST['showinnernav']) ? '0' : '1',
  16.                 'tags' => $_POST['tags'],
  17.         );
复制代码
第四步修改文章显示函数/source/module/portal/portal_view.php
找到代码
  1. include_once template("diy:portal/view:{$catid}", NULL, NULL, NULL, $cat['articleprimaltplname']);
复制代码
此代码上面一行插入代码
  1. $tags=explode("|",$article["tags"]);
  2. foreach($tags as $val) {        
  3.         $htmltags .= "<a href="/search.php?mod=portal&srchtxt=".$val."&searchsubmit=yes" target="_blank">".$val."</a>  ";
  4. }
复制代码
第五步修改文章显示模版/template/default/portal/view.htm
可以自己选择要放的位置,例如放到内容下面:查找
  1. $content[content]
复制代码
然后在下面加入代码
  1. <div>
  2.                                                 <b>Tab标签:</b> $htmltags
  3.                                         </div>
复制代码
第六步进入后台->工具->更新缓存。只选择清理数据就可以了。

----------------------------------------------------------------------------------------------------------------------------------
预览如下:

----------------------------------------------------------------------------------------------------------------------------------




编辑页面

显示页面


点击TAG后页面


提示:基本内容已经实现,具体详细细节还需要自己完善。

本帖子中包含更多资源

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

x

评分

1

查看全部评分

你在哪里 发表于 2012-5-11 12:07:11 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

28653533 发表于 2012-5-11 23:50:49 | 显示全部楼层
本帖最后由 28653533 于 2012-5-11 23:52 编辑

这个行不行的啊?
回复

使用道具 举报

28653533 发表于 2012-5-11 23:53:53 | 显示全部楼层
一直在找寻这个答案,先试一下看看。这样的话,我的站www.kmtsly.com图片tag问题就可以得到解决了!
回复

使用道具 举报

28653533 发表于 2012-5-12 00:28:08 | 显示全部楼层
litaobbs 我需要你的帮助!请看到广播以后,加28653533为好友!谢谢了
回复

使用道具 举报

kkj688 发表于 2012-5-12 00:50:19 | 显示全部楼层
第二步添加pre_portal_article_title表字段
这个是在那里添加的啊??请说明白一些,我是老菜!!!
回复

使用道具 举报

我会一直孤单 发表于 2012-5-12 02:14:13 | 显示全部楼层
支持一下!!!!
回复

使用道具 举报

8#
无效楼层,该帖已经被删除
qing7 发表于 2012-5-12 03:57:21 | 显示全部楼层
http://www.chmama.net受教了!
回复

使用道具 举报

zhuzhaodan 发表于 2012-5-12 20:36:31 | 显示全部楼层
Very nice,that's what I've been seeking for,I'll try it to see if it works!thanks
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-9-28 13:17 , Processed in 0.438787 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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