DEDECMS软件频道不能像文章频道那样关键字自动从TAG中获取,而是直接从标题中分解出一些毫无意义的关键字,这也导致在调用“相关文章”时文章不相关的现象,经过对比文章频道添加模板,AB模版网找到了修改方法:
在网站根目录下找到文件 dede/templets/soft_add.htm (dede为DEDECMS默认后台管理目录,如有修改请找到相应的文件夹),打开后找到:
<input name="tags" type="text" id="tags" value="" style="width:300px" />
替换为:
<input name="tags" type="text" id="tags" value="" style="width:300px" onChange="$Obj('keywords').value=this.value;" />
再找到:
<input type='text' name="keywords" id="keywords" style="width:290px;" value="" />
替换为:
<input type='text' name="keywords" id="keywords" style="width:290px;" value="<?php echo $keywords; ?>" />
如此一来,在软件频道发布内容时关键字会自动与TAG相匹配,你也可以根据需要手动修改关键字。
这样做的好处除了能减少不必要的重复录入工作外,对于要在内容页调用相关文章的朋友来说也是大有好处的,大家都知道DEDECMS在调用相关文章时都是根据关键字调用,如果由系统自动提取关键字的话,那会让你很无语,比如我要发的文章标题是“dedecms内容管理系统下载”,自动提取的关键字“dedecms,内容,管理,系统,下载”,这就意味着甚至带有“下载”的关键字都会显示在相关文章里,很无厘头吧?按照以上的方法修改后,你只要把TAG标签设置为“dedecms,内容管理系统”,这样调用出来的“相关文章”相关度就非常高,也更适合用户体验。
附上相关文章调用代码:
{dede:likearticle row='10' titlelen='60' orderby='click'}
<font color=#666666>[[field:pubdate function="MyDate('m-d',@me)"/]] </font>
<a href='[field:arcurl/]' title="[field:title /]" target='_blank'>[field:title function='cn_substr(@me,32)'/]</a>
{/dede:likearticle}