新闻中心

案例分析:discuz!x 门户关键词keyword与描述description查看源码不显示的解决方案

作者 / 无忧主机 时间 2013-10-26 18:16:06

问题现象:访问dz论坛门户查看“网页源码”,找不到页面的找不到keyword与和description 原因分析:现在为了节省一些流量,在查看源代码的时候,只有管理员可以看到页面中的 keyword 和 description,而其他普通会员和游客是看不到的,但是蜘蛛是可以看到的,不相信的朋友可以模拟蜘蛛看看结果。 问题所在:目前发现的问题是如果开启了游客缓存,那么游客触发缓存后,会造成蜘蛛爬行的时候也读了缓存,那么就会造成蜘蛛找不到 keyword 与 description 了,所以可以做如下修改,如下修改后,游客也可以看到这两项了,如果开启了游客缓存,则需要将游客缓存删除一下才会生效。 解决方法:修改文件source/class/helper/help_seo.php 找到 if($descriptiontext && (isset($_G['makehtml']) || CURSCRIPT == 'forum' || IS_ROBOT || $_G['adminid'] == 1)) { 修改为:if($descriptiontext && (isset($_G['makehtml']) || CURSCRIPT == 'forum' || CURSCRIPT == 'portal' || IS_ROBOT || $_G['adminid'] == 1)) {</span> 找到: if($keywordstext && (isset($_G['makehtml']) || CURSCRIPT == 'forum' || IS_ROBOT || $_G['adminid'] == 1)) { 修改为:if($keywordstext && (isset($_G['makehtml']) || CURSCRIPT == 'forum' || CURSCRIPT == 'portal' || IS_ROBOT || $_G['adminid'] == 1)) {</span> 如果想要完全放开SEO设置给游客看,那么可以将一下代码全部替换: if($descriptiontext && (isset($_G['makehtml']) || CURSCRIPT == 'forum' || IS_ROBOT || $_G['adminid'] == 1)) { $seodescription = helper_seo::strreplace_strip_split($searchs, $replaces, $descriptiontext); } if($keywordstext && (isset($_G['makehtml']) || CURSCRIPT == 'forum' || IS_ROBOT || $_G['adminid'] == 1)) { $seokeywords = helper_seo::strreplace_strip_split($searchs, $replaces, $keywordstext); } 为 if($descriptiontext) { $seodescription = helper_seo::strreplace_strip_split($searchs, $replaces, $descriptiontext); } if($keywordstex) { $seokeywords = helper_seo::strreplace_strip_split($searchs, $replaces, $keywordstext); }    

本文地址:https://www.51php.com/discuz/12990.html

1
1
1
1
1
1
1

客户服务热线

0791-8623-3537

在线客服