Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

游客看不到 keyword 与 description 的解释与解决方案

  [复制链接]
下砂 发表于 2011-5-11 09:27:28 | 显示全部楼层 |阅读模式
本帖最后由 viswow 于 2011-5-11 18:00 编辑

原因分析:现在为了节省一些流量,在查看源代码的时候,只有管理员可以看到页面中的 keyword 和 description,而其他普通会员和游客是看不到的,但是蜘蛛是可以看到的,不相信的朋友可以模拟蜘蛛看看结果。
问题所在:目前发现的问题是如果开启了游客缓存,那么游客触发缓存后,会造成蜘蛛爬行的时候也读了缓存,那么就会造成蜘蛛找不到 keyword 与 description 了,所以可以做如下修改,如下修改后,游客也可以看到这两项了,如果开启了游客缓存,则需要将游客缓存删除一下才会生效。

修改文件:source\function\function_core.php

查找:
  1. if($descriptiontext && (IS_ROBOT || $_G['adminid'] == 1)) {
复制代码

替换为:
  1. if($descriptiontext && (CURSCRIPT == 'forum' || IS_ROBOT || $_G['adminid'] == 1)) {
复制代码



查找:
  1. if($keywordstext && (IS_ROBOT || $_G['adminid'] == 1)) {
复制代码

替换为
  1. if($keywordstext && (CURSCRIPT == 'forum' ||IS_ROBOT || $_G['adminid'] == 1)) {
复制代码


如果没有开启游客缓存,可以不做修改。
如果想要完全放开SEO设置给游客看,那么可以

  1.                 if($descriptiontext && (CURSCRIPT == 'forum' || IS_ROBOT || $_G['adminid'] == 1)) {
  2.                         $seodescription = strreplace_strip_split($searchs, $replaces, $descriptiontext);
  3.                 }
  4.                 if($keywordstext && (CURSCRIPT == 'forum' || IS_ROBOT || $_G['adminid'] == 1)) {
  5.                         $seokeywords = strreplace_strip_split($searchs, $replaces, $keywordstext);
  6.                 }
复制代码

修改为:
  1.                 if($descriptiontext) {
  2.                         $seodescription = strreplace_strip_split($searchs, $replaces, $descriptiontext);
  3.                 }
  4.                 if($keywordstext) {
  5.                         $seokeywords = strreplace_strip_split($searchs, $replaces, $keywordstext);
  6.                 }
复制代码

另外:帖子内容页  如果没有单独设置 对应的 SEO 描述,那么此处:
游客与会员看到的是: 帖子标题
蜘蛛与管理员看到的是:摘要+标题

如果需要让会员也看到的这个描述以表安慰的话,可以做如下修改:
找到  source\module\forum\forum_viewthread.php 搜索:
  1. if(IS_ROBOT || $_G['adminid'] == 1) $summary = str_replace(array("\r", "\n"), '', messagecutstr(strip_tags($post['message']), 160));
复制代码

修改为:

  1. $summary = str_replace(array("\r", "\n"), '', messagecutstr(strip_tags($post['message']), 160));
复制代码





腐朽的木头 发表于 2011-5-11 09:28:48 | 显示全部楼层
0508的svn版本 解决这个问题么有?
回复

使用道具 举报

64243354 发表于 2011-5-11 09:30:04 | 显示全部楼层
SF沒了~
回复

使用道具 举报

rssq168 发表于 2011-5-11 09:44:31 | 显示全部楼层
回复

使用道具 举报

lhn045 发表于 2011-5-11 09:53:34 | 显示全部楼层
回复

使用道具 举报

ybs885 发表于 2011-5-11 10:05:27 | 显示全部楼层
额。。。看到了
回复

使用道具 举报

ARCHY` 发表于 2011-5-11 10:06:55 | 显示全部楼层
支持下  终于有解决方法了
回复

使用道具 举报

shwxyuan 发表于 2011-5-11 10:34:51 | 显示全部楼层
www.hnxwz.com

我站也已经解决了此问题!
回复

使用道具 举报

芸豆网 发表于 2011-5-11 10:57:13 | 显示全部楼层
已经解决,多谢!
回复

使用道具 举报

zhouen 发表于 2011-5-11 11:48:27 | 显示全部楼层
游客缓存什么意思?在哪里开启和关闭?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-15 16:43 , Processed in 0.028354 second(s), 4 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表