0

如本文所述https://www.rebelytics.com/multiple-hreflang-tags-one-url/可以将多个 hreflangs 分配给单个 url。

所以我想为指向同一个 url 的英语国家使用多个 hreflang 标签,这样我就可以从 SEO 的角度受益,而无需为每个国家生成新的 url。

我想用这个例子:

<link rel="alternate" href="https://www.yourwebsite.com/" hreflang="x-default">
<link rel="alternate" href="https://www.yourwebsite.com/en/about/" hreflang="en">
<link rel="alternate" href="https://www.yourwebsite.com/en/about/" hreflang="en-gb">
<link rel="alternate" href="https://www.yourwebsite.com/en/about/" hreflang="en-ie">
<link rel="alternate" href="https://www.yourwebsite.com/en/about/" hreflang="en-ca">

但是我怎样才能让它适用于所有的 wordpress 页面(url)?谢谢!

4

1 回答 1

0

你可以试试这个:

function add_multiple_hreflang_to_head() {
  $current_url = "https://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; // change to http if you don't use ssl
  if (strpos($current_url, '/en/') !== false) :
  ?>
    <link rel="alternate" href="<?php echo $current_url; ?>" hreflang="x-default">
    <link rel="alternate" href="<?php echo $current_url; ?>" hreflang="en">
    <link rel="alternate" href="<?php echo $current_url; ?>" hreflang="en-gb">
    <link rel="alternate" href="<?php echo $current_url; ?>" hreflang="en-ie">
    <link rel="alternate" href="<?php echo $current_url; ?>" hreflang="en-ca">
  <?php
  endif;
}
add_action('wp_head', 'add_multiple_hreflang_to_head');

如果 URL 包含“/en/”,它会将链接加载到<head>. 您可以将此代码添加到(子)主题functions.php 或PHP 片段插件。

于 2018-06-06T01:52:13.897 回答