织梦dedecms自带有tag聚合的功能,但它只做到了聚合,由于不能自定义标题、描述、关键词、甚至是添加图片修饰,因此白天认为是不够完整的。本文将为大家分享一个可以自定义织梦dedecms tag 标签 tdk 信息的教程。
织梦dedecms tag标签自定义tdk信息教程
1、后台-系统-SQL命令行工具,执行以下代码:
ALTER TABLE `#@__tagindex` ADD `seotitle` VARCHAR( 255 ) NOT NULL DEFAULT ''; ALTER TABLE `#@__tagindex` ADD `litpic` VARCHAR( 255 ) NOT NULL DEFAULT ''; ALTER TABLE `#@__tagindex` ADD `keywords` VARCHAR( 255 ) NOT NULL DEFAULT ''; ALTER TABLE `#@__tagindex` ADD `description` VARCHAR( 255 ) NOT NULL DEFAULT '';
如下图所示:
注:目的为tag标签在数据表中添加标题、关键词、缩略图、以及描述等字段。
2、下载下方文件,根据自己网站编码,选择对应的文件上传之后台管理文件夹(默认后台管理文件夹名为dede):
注:只需替换文件为tags_main.htm即可(路径对应为/dede/templets/tags_main.htm),替换之前请先备份。
3、打开 /include/datalistcp.class.php,在207行找到以下代码:
'/([x00-x08,x0b-x0c,x0e-x19])/'
替换为:
'/[x00-x08x0Bx0Cx0E-x1Fx7F]+/S'
继续找到代码:
$val = str_replace(",",",",$val);
删除或注释这一行代码,参考下图:
4、打开 /include/arc.taglist.class.php 文件,在80行找到:
//初始化模板
在其上方加入代码:
foreach($this->TagInfos as $k=>$v) $this->Fields[$k] = $v;
参考下图
5、针对TAG标签静态化了的朋友,还需要打开文件 /include/arc.taghtml.class.php 找到以下代码(大概在40-60行左右):
dsql->GetOne
在下方加入代码:
foreach($arcRow as $k=>$v) $this->Fields[$k] = $v;
如图:
注:上图中的 $arcRow 要与下一行代码遍历中的 $arcRow 一致。如果不一致,要把下一行的改成与上行一致。
至此就可以实现织梦dedecms tag标签自定义tdk信息了,效果如下图所示:
相关扩展:
当前文章模板调用tag标签:
{dede:tag row='30' sort='new' getall='0'} 链接:[field:link/] 标签名:[field:tag/] SEO标题:[field:seotitle/] 缩略图:[field:litpic/] 关键词:[field:keywords/] 描述:[field:description/] {/dede:tag}
TAG标签页调用自定义的标题、描述、关键词的代码:
<title>{dede:field.title/} - {dede:field.seotitle/} - {dede:global.cfg_webname/}</title> <meta name="keywords" content="{dede:field name='keywords'/}" /> <meta name="description" content="{dede:field name='description' function='html2text(@me)'/}" />
原创文章,作者:白天,如若转载请注明出处:织梦dedecms tag 标签自定义tdk信息