最近一段时间网站robots文件出了点问题,稍微接触过SEO的站长朋友都应该知道 robots协议(也称为爬虫协议、爬虫规则、机器人协议等),也就是通常添加到网站根目录的robots.txt 文件,它的作用在于告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取,从而优化网站的收录结果和权重。
如果你的网站根目录还没有 robots.txt,你可以创建一个,具体的写法请参考 百度百科。下面是一个基本的 WordPress robots协议:
User-agent: * 针对所有搜索引擎
Disallow: /feed/ 不允许抓取的文件夹
Disallow: /trackback/ 不允许抓取的文件夹
Disallow: /wp-admin/ 不允许抓取的文件夹
Disallow: /wp-content/ 不允许抓取的文件夹
Disallow: /wp-includes/ 不允许抓取的文件夹
Disallow: /xmlrpc.php 不允许抓取的页面
Disallow: /wp-
Allow: /wp-content/uploads/
Sitemap: http://example.com/sitemap.xml 网站地图
下面主要介绍一下 WordPress 自动创建虚拟 robots.txt 功能。如果你的网站根目录不存在真实的 robots.txt,那么可以让 WordPress 自动创建一个虚拟的 robots.txt (该文件不会真实存在,但是访问 http://yoursite.com/robots.txt 时可以正常显示
将下面的代码添加到主题的 functions.php 即可:
/* 为你的 WordPress 站点添加 robots.txt */
add_filter( 'robots_txt', 'robots_mod', 10, 2 );
function robots_mod( $output, $public ) {
$output .= "Disallow: /user/"; // 禁止收录链接中包含 /user/ 的页面
return $output;
}
注:如果你想添加更多的规则,请复制上面代码的第 7 行,然后修改一下即可。
访问 http://yoursite.com/robots.txt 我们可以看到如下内容:
User-agent: *
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /user/
也就是说,WordPress 默认已经添加了前 3 行规则了。
robots.txt 涉及到网站的收录,所以请确保你明白它的书写方法,保证每条规则都是正确无误的!