【WordPress】Search ConsoleでFetch as Googleをしてもインデックスされない(インデックスが削除される)時にやったこと

シェアする

ここ数日、Wordpressで作成している当ブログでSearch ConsoleでFetch as Googleをしてもインデックスされない、またはインデックスされていても削除されるという現象に悩まされていました。

その解決法をいろいろと調べていたのですが、結果として、linkタグのcanonical属性を無効にすることでとりあえず一部のページはインデックスされるようになりましたので、その方法を記録しておきたいと思います。

スポンサーリンク
レクタングル大

そもそもcanonical属性とは何か?

canonicalとは簡単にいうと、重複したコンテンツを持つ複数のページを、1つのページとして検索エンジンに認識させる機能を持つ属性です。

canonical属性を使用することで、重複するコンテンツを持つページが複数存在している場合に、優先させる1つのページのみを検索エンジンのクロールの対象として指定することができます。

複数の重複ページが存在している場合に、検索エンジンに優先させるべきページを伝えることでそれ以外のページは重複ページであることを伝える事ができます。引用:ferret-plus.com

例えば、

①https://akashi-t.com/product
②https://akashi-t.com/product?id=423

というページは同じページを開きますが、GoogleはこのURLを別々のページと認識します。

そのため、Googleが重複したコンテンツを質の低いコンテンツと見なしたり、ページあたりの評価が分散してしまうことでSEO上のデメリットが発生します。

そこで、canonical属性を使い、優先させるべき1つのページを検索エンジンに伝えることで、その他の重複するコンテンツを持つページをcanonical属性で指定した1つのページとして認識させることができます。

<link rel="canonical" href="https://akashi-t.com/product"/>

この場合は、①https://akashi-t.com/productというページにその他のページを集約しています。

canonical属性を削除する方法

WordPressではcanonical属性はwp_head内で挿入されています。

wp_head内で挿入されるcanonical属性を無効にする

wp_head内でcanonical属性を無効にするためには、アクションフックを使用します。

functions.php内に以下のコードを記述します。

remove_action('wp_head', 'rel_canonical');

All in One SEOの「カノニカルURL」のチェックを外す

私の場合、wp_headのアクションフックを除去してもcanonical属性が表示されたままになっていました。

調べてみると有効にしているAll in One SEOプラグインにもcanonical属性を挿入するオプションがあるということで、以下のように「カノニカルURL」という項目のチェックを外すことで、完全に無効にすることができました。

で、canonical属性を無効にして良いのか?

これ、どうなんでしょうか。

前述したデメリットも考えられますし、canonical属性を無効にしてもインデックスされないページもあります。

今回新たにインデックスされたページは、ここ数日の間に新規で作成した独立のページなのですが、これまでは重複コンテンツだとみなされていたわけで、そもそもなぜ重複していると判断されたのか、原因そのものがまだ分かっていません。

すべてのページがインデックスされるわけではないという情報もありますし、もしかすると一時的な現象なのかもしれません。

今後も検証が必要な気がします。

まとめ

Search ConsoleでFetch as Googleをしてもインデックスされない、またはインデックスされていても削除されるという現象が起きた場合は、canonical属性を無効にすると一部解決できる(できた)。だけどそれが妥当な解決方法なのかは分かりません。

という感じです。

スポンサーリンク
レクタングル大
レクタングル大

シェアする

フォローする