我正在使用WordPress。functions.php中的一个文件包含function do_robots() {...,它阻止Google爬行。我已将这一职能改为:
function do_robots() {
header( 'Content-Type: text/plain; charset=utf-8' );
do_action( 'do_robotstxt' );
if ( '0' == get_option( 'blog_public' ) ) {
echo "User-agent: *";
echo "\nDisallow: /wp-admin";
echo "\nDisallow: /wp-includes";
echo "\nDisallow: /wp-content";
echo "\nDisallow: /stylesheets";
echo "\nDisallow: /_db_backups";
echo "\nDisallow: /cgi";
echo "\nDisallow: /store";
echo "\nDisallow: /wp-includes\n";
} else {
echo "User-agent: *";
echo "\nDisallow: /wp-admin";
echo "\nDisallow: /wp-includes";
echo "\nDisallow: /wp-content";
echo "\nDisallow: /stylesheets";
echo "\nDisallow: /_db_backups";
echo "\nDisallow: /cgi";
echo "\nDisallow: /store";
echo "\nDisallow: /wp-includes\n";
}
}Allow不太确定。是不是只要我不做Disallow,默认情况下它就是Allow?function阻塞?发布于 2013-05-18 03:44:16
SVN之外的原始函数看起来比上面的例子阻塞更少的路径,所以我建议删除一些额外的目录(例如wp内容),看看这是否是您想要的。您还可以尝试使用WordPress 插件生成一个Google,供他们的引擎阅读。
function do_robots() {
header( 'Content-Type: text/plain; charset=utf-8' );
do_action( 'do_robotstxt' );
$output = "User-agent: *\n";
$public = get_option( 'blog_public' );
if ( '0' == $public ) {
$output .= "Disallow: /\n";
} else {
$site_url = parse_url( site_url() );
$path = ( !empty( $site_url['path'] ) ) ? $site_url['path'] : '';
$output .= "Disallow: $path/wp-admin/\n";
$output .= "Disallow: $path/wp-includes/\n";
}
echo apply_filters('robots_txt', $output, $public);
}robots.txt文件的规则是,除非指定,否则所有内容都是允许的,尽管服从robots.txt的搜索引擎更像是一个信任系统,而不是任何东西。
https://stackoverflow.com/questions/16620393
复制相似问题