我们很多WordPress站长都比较喜欢在后台编辑文章的时候直接上传图片,这样WordPress就会为上传的图片创建一个页面(也叫附件页面或图片页面),那么我们应该如何做才能让搜索引擎禁止收录WordPress附件页面(图片页面)呢?
1、在网站根目录的robots.txt文件中添加以下代码:
Disallow: /attachment/
2、将附件页面(图片页面)301重定向到所属文章页,目前有两种方法:
一是通过插件实现
比如安装Attachment Pages Redirect插件,无需任何设置,启用后即可将附件页面重定向到所属的文章页,如果没有所属文章页就重定向到首页,如果所属文章页无法访问就显示404。具体可参考以下文章:
比如安装Disable Media Pages,也相当于无需任何设置,启用后即可将附件页面别名设置为32位由小写字母和数字组成的字符串,而且用户访问附件页面直接显示404。具体可参考以下文章:
二是通过代码实现
在所使用的主题中找到attachment.php文件,如果没有就新建一个PHP文件并命名为attachment.php,然后添加以下代码即可:
<?php
//跳转到媒体所属的文章页
function Bing_disable_attachment_pages() {
if ( ( $post_parent = wp_get_post_parent_id() ) > 0 )
$redirect = get_permalink( $post_parent );
else
$redirect = home_url();
wp_redirect( $redirect );
die;
}
Bing_disable_attachment_pages();
?>
以上代码来自@哈勃私语 – WordPress 禁用或禁止收录媒体页
以上代码的功能就是判断当前访问的附件的post_parent是否大于0,如果大于0就说明该附件被文章引用,所以将其重定向到该文章页;如果不大于0就说明该附件没有被文章引用,所以将其重定向到网站首页。