phpcms如何将访问提示“您要查看的信息不存在或者还未通过审批!”的动态页面设置为伪404

phpcms网站动态内容页删除后再次访问提示“您要查看的信息不存在或者还未通过审批!”,如果这个页面已被收录,还有关键词来源的ip,那么最好把这个页面设置为伪404,防止流量流失和跳出率增高(真404即http状

[时间:10-15]    [浏览:]    [放入收藏夹]    [查看详情]

phpcms网站动态内容页删除后再次访问提示“您要查看的信息不存在或者还未通过审批!”,如果这个页面已被收录,还有关键词来源的ip,那么最好把这个页面设置为伪404,防止流量流失和跳出率增高(真404即http状态码是404的设置方法访问: 相关信息

phpcms如何将已删除的内容http状态码设置为404
phpcms教程

截止目前改版已经持续了两个半月,虽然百度说跳转关系至少要保持三个月,但我的关键词权重已转移完成,新站流量也很稳定,再加之原网站使用的cdn是360网站卫士的,动不动改...


具体怎么操作呢?
找到/phpcms/modules/content/index.php,第59行

if(!$r || $r['status'] != 99) showmessage(L('info_does_not_exists'),'blank');

替换为:

if(!$r || $r['status'] != 99) header('location:/errorfiles/404.html');

有人说把全站改为静态再做404页面,其实不用,这样操作就可以。
解释下原理:
phpcms如何将访问提示“您要查看的信息不存在或者还未通过审批!”的动态页面设置为伪404
$r = $this->db->get_one(array('id'=>$id));//$r为根据id查询的这条内容信息。
if(!$r || $r['status'] != 99) showmessage(L('info_does_not_exists'),'blank');//$r['status'] != 99的意思是这条信息没有通过审核,即如果这条信息为空或未通过审核则执行后面的操作。showmessage()并不是PHP的内置函数,而是phpcms的独有函数,很多人在这里搞错了。
info_does_not_exists//这个字段的意思是“您要查看的信息不存在或者还未通过审批!”,大家可以打开/phpcms/languagess/zh-cn/content.lang.php在第295行看一下。
header()函数不知道的的可以百度一下,简单讲就是在任何实际的输出被发送之前调用,后面的location指向自己的404页面即可。

  本文转载自:精准像素:11px.cn ,感谢作者分享实用知识


标签: