ハシビィくんSWELLのcanonicalタグがGoogle推奨の値になってないすけど、修正する方法ってあるっすか?



もちろんあるぞ!ただ標準機能ではなく、コードを記述する必要があるのが注意だ。
Googleのcanonicalタグの見解は?
canonical タグは検索エンジンに対して URL の優先版を示す「推奨」の方法であり、必ず従うべき命令(directive)ではない
https://developers.google.com/search/docs/crawling-indexing/consolidate-duplicate-urls?utm_source=chatgpt.com&hl=ja
→ 指定しなくてもGoogleは独自に判定する
→ 指定しても無視する場合がある と明記されています。
canonical 設定なしでも Google は正規 URL を判定できる
https://developers.google.com/search/docs/crawling-indexing/consolidate-duplicate-urls?utm_source=chatgpt.com&hl=ja
→ canonical を明示することは推奨されるが、必須ではない
- canonical タグは SEO評価を分散させないための重要な手段
- 設定ミスがあると逆効果や無視される可能性がある
- 可能な限り自己参照canonicalを出す
- 構造が重複しやすいページ(フィルタ・パラメータ)は慎重に設計
- noindex は canonical と混ぜない
という運用がSEO的に安全です。
SEO SIMPLE PACKでのcanonicalタグの挙動は?
WordPressテーマ『SWELL』を使う環境だとセットで使いたい『SEO SIMPLE PACK』。


『SWELL』のSEOを補強する位置付けのプラグインになりますが、タームアーカイブページのcanonicalタグの設定が常にpage1のURLが設定されています。
上記画像では、2ページ目なのに/blog/となっているのが確認できると思います。
add_filter( 'ssp_output_canonical', function( $canonical ) {
$paged = get_query_var( 'paged' );
// 2ページ目以降のみ変更
if ( $paged && $paged >= 2 ) {
return get_pagenum_link( $paged );
}
return $canonical;
});2ページ以降のcanonicalタグを無効にする
add_filter( 'ssp_output_canonical', function($canonical){
if ( is_paged() )
return '';
return $canonical;
});| ページ | canonical |
|---|---|
| 1ページ目 | 出力される |
| /page/2/ 以降 | 出力されない |
完全にcanonicalを無効化
add_filter( 'ssp_output_canonical', '__return_empty_string' );このコードで全ページのcanonicalタグが無効になりますが、基本的にはこのコードを使用することはほぼないと思います。
SEO対策観点でも、標準の常にpage1のURLが設定されていたとしても、無効にするよりはある程度は評価されるからです。
まとめ:canonicalタグをSEO対策向けにカスタマイズ
アーカイブページの2ページ以降の設定は、noindex・nofollowが一般的となっております。
そして今回のcanonicalタグに関しては、ページ分割されている場合は1ページ目に正規化するのではなく各ページのURLを指定するか、canonicalタグを無効にしてGoogleに判定されるのを祈る形のどちらかかなと思います。
今までの経験上WordPressであれば、SEO系プラグインを導入していれば大きく設定内容が外れることはありません。しかし、「少しでも評価を上げたい」のであれば正規化するのがベストです。
実際に正規化したおかげで、SEO対策として好転し検索順位が1ページ目に表示された経験がございます。
未対策にしておくのはもったいないですね。
- Googleはcanonicalを「強いヒント」として扱い、必ず従う命令ではないため、可能な限り自己参照canonicalで正規化するのが安全。
- SWELL+SEO SIMPLE PACK環境では、タームの2ページ目以降が1ページ目に向くため、
ssp_output_canonicalフィルターで各ページURLに修正できる。 - canonicalを無効化するよりも、各ページごとに正規化設定した方がSEO評価の安定・向上につながる可能性が高い。








コメント(承認制)