Custom Canonical URLs

时间:2011-05-14 作者:gesher

我正在从olddomain移动我的站点。com到newdomain。com。我想保留olddomain中的所有内容。但我希望google中的规范版本被识别为newdomain。com/which post/而不是olddomain上的相同内容。com。

如何修改olddomain部分中的rel=canonical。com进行此更改?

2 个回复
最合适的回答,由SO网友:goldenapples 整理而成

很遗憾,中没有筛选器rel_canonical() 作用但您可以从wp\\u头中完全删除该函数,然后编写自己的函数。尝试将其添加到函数中。旧域中的php:

remove_action( \'wp_head\', \'rel_canonical\' );
add_action( \'wp_head\', \'new_rel_canonical\' );

function new_rel_canonical() {
     if ( !is_singular() )
          return;

      global $wp_the_query;
      if ( !$id = $wp_the_query->get_queried_object_id() )
          return;

      $link = get_permalink( $id );
      $link = str_replace( \'olddomain.com\', \'newdomain.com\', $link );
      echo "<link rel=\'canonical\' href=\'$link\' />\\n";
  }
显然,只需替换olddomain即可。com和newdomain。com在倒数第二行与您的实际域名!

SO网友:T.Todua

有一个过滤器!

add_filter( \'get_canonical_url\', \'myfunc\', 10, 2);
function myfunc( $canonical_url, $post )
{
    ...
    ...
    return $canonical_url;
}

结束

相关推荐

An issue with SEO Ultimate

我正在使用SEO Ultimate。404监视器模块报告了几个404错误。报告不存在的URL的错误;其中有3本是草稿,但从未出版过。我查看了我的xml站点地图,但没有找到。此外,链接检查器不会显示任何断开的链接。有谁有过SEO旗舰版的经验,谁能为我指出正确的方向?谢谢