时间:2016-02-16 19:23 来源: 我爱IT技术网 作者:佚名
欢迎您访问我爱IT技术网,今天小编为你分享的电脑教程之dedeCMS系列教程:【dede:likearticle文章标签和tag标签关联错误解决方法】,请阅读以下详细内容!
dede:likearticle文章标签和tag标签关联错误解决方法
织梦5.7有个dede:likearticle标记是用来文章的关联,但是在使用的过程中,我们却发现这个关联实在是鸡肋,作者却发现,大家在使用织梦5.7搜索的时候是不是还能勉强接受呢?作者就把dede的搜索功能给替换到这个likearticle上,看样子的确是好多了。代码简介
作者把默认以keywords关键字来关联文章改成以tags来关联,并且加了一个判断,在执行以tags的模糊查询之后,如果查询的数据为空的话,就直接再直接再次查询本栏目下所有推荐的文章,这个比较好,就是保持着一直有返回值。作者考虑到有的文章没有tags,而有的文章有tags却没有查询到文章,所以就先判断是否有tags如果没有就直接查询本栏目下推荐文章,如果有tags标签却查询到为空的文章那么也返回当前栏目下的推荐文章。
likearticle和tag标签关联解决方法/步骤
第1步:使用记事本或一些工具打开“根目录\include\taglib\likearticle.lib.php”此文件。第2步:搜索“['keywords']”,全部替换成['tags']并保存。
电脑互助网注;:
原代码55行:$keyword=( !empty($refObj->Fields['keywords']) ? $refObj->Fields['keywords'] : '' );
原代码75行:if(!empty($refObj->Fields['keywords']))
原代码77行:$keywords=explode(',' , trim($refObj->Fields['keywords']));
第3步:在87行下添加“$keyword .=$keyword=='' ? " CONCAT(arc.title,arc.keywords,arc.shorttitle) REGEXP '($k)'": " OR CONCAT(arc.title,arc.keywords,arc.shorttitle) REGEXP '($k)'";”
源代码87行注销://$keyword .=($keyword=='' ? " CONCAT(arc.keywords,' ',arc.title) LIKE '%$k%' " : " OR CONCAT(arc.keywords,' ',arc.title) LIKE '%$k%' ");

电脑互助网添加代码意思:原来的模糊查询语句,作者在这里多加了一个短标题也要查询,不过我不喜欢用linke这个模糊查询,所以在这里换成REGEXP查询。
第4步:在第107行下面添加以下代码并保存。
以下是源代码101行到107全部注销的图,单击图片查看大图:

以上代码意思:按tag标签关联文章内容 query2为备用,如果按tags标记查询的数据为空的话,第二个就可以用到了。
第5步:在第原代码117行下添加以下代码并保存。
以下是源代码111行到117全部注销的图,单击图片查看大图:

以上代码意思:第5步查的是当tags标签有内容时查的,第5步就是当tags标签不为空时执行的SQL。
第6步:完成之后并上传到空间,即可,作者就不演示代码后的效果了,如果非想看效果的话,看本文右侧的相关文章就明白了。
筌于一些网友对SQL不敏感,可能会认为本文写的一点都看不懂,自己也改不了,没关系,这是下载地址:likearticle.lib.rar
关于dede:likearticle文章标签和tag标签关联错误解决方法的用户互动如下:
相关问题:
答: >>详细
相关问题:
答: >>详细
相关问题:
答: >>详细
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
