文章被百度重复收录的原因及解决方案

昨天在查询网站收录数据,看到最近一周收录的文章有三次重复。同个网站内两篇文章重复收录无论是对于读者还是对于搜索引擎都是不好的,一篇同样文章被收录三次,另外两篇就成了"垃圾"了嘛,据说大量重复收录会被搜索引擎惩罚(没验证过)。

文章重复收录comment-page-1与replytocom

点击进入链接,除了原网页,分别出现

http://www.stcash.com/5273/comment-page-1

http://www.stcash.com/5273?replytocom=1989

前面一篇文章居然出现一个三级目录,后面一篇文章又类似于动态网页网址。我文章中是没有这两个链接地址的,查看网页源码,看出了一点端倪。

我发现了这两个?replytocom=1989网址的来源:文章评论链接

文章重复收录comment-page-1与replytocom

四个评论刚好对应四个replytocom,百度蜘蛛可能有一定的智能,四个replytocom网址中只收录了一个,但是又不够智能,没有区分出来评论链接和原文链接对应的文章内容是相同的。

comment-page-1网址同样是来源于评论链接,comment-page-1代表着评论页面的第一页。如果我的评论比较多,比如说有1000条评论,那么一页肯定是显示不下去的,就会出现comment-page-2,comment-page-3......这就是评论分页功能,这个功能本质上是防止评论过多时,网页会被拉的很长,导致网页加载速度慢和用户体验差。但是不巧的是,百度蜘蛛依然不能识别出来这和原文

解决方案

1,对于comment-page-1重复收录,有两种方式解决

1),在wordpress后台关闭评论分页

文章重复收录comment-page-1与replytocom

2),修改robots.txt,加上一句项目的代码

Disallow: /comment-page-

robots.txt在网站根目录,使用 网址/robots.tx就可以看到设置的结果了。如果根目录下没有这个文件

wp-includes/funtion中有这么一段代码:

  1. $output = "User-agent: *\n";

  2. $public = get_option( 'blog_public' );

  3. if ( '0' == $public ) {

  4.     $output .= "Disallow: /\n";

  5. else {

  6.     $site_url = parse_url( site_url() );

  7.     $path = ( !emptyempty$site_url['path'] ) ) ? $site_url['path'] : '';

  8.     $output .= "Disallow: $path/wp-admin/\n";

  9. }

在 $output .= "Disallow: $path/wp-admin/\n";  后面增加一句$output .= "Disallow: $path/comment-page-\n";

2,对于replytocom重复收录,设置robots.txt文件

Disallow:/*?replytocom=

或者是加上对于包含replytocom的所有链接都加上nofollow链接

  1. add_filter('comment_reply_link', 'add_nofollow', 420, 4);

  2. function add_nofollow($link$args$comment$post){

  3.   return str_replace("href=""rel='nofollow' href="$link);

  4. }


浩海营销网-互联网营销门户网站_微信营销-淘宝营销-微博营销-实用的营销网站,版权所有丨文章和资源来自互联网或者站长的原创,如果有侵犯版权,请尽快联系站长,我们会在24h内删除有争议的资源丨转载请注明本文固定链接
喜欢 ()or分享