discuzX3.1门户keyword和description在查看源码时不显示的解决方法

admin 其他CMS教程 0

discuzX3.1门户站的关键词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>

如果想要完全给游客看到,那么可以将如下代码:

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);
}

免责声明

本站提供的一切软件、教程和内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。敬请谅解!

您需要 登录账户 后才能发表评论

欢迎 你 发表评论: