【相性最悪】WordPressテーマとAll in One SEOの競合:メタ重複を解消してSEO対策する方法

- All in One SEOの機能でメタデスクリプションを設定しているのに、検索エンジンに反映されていないような気がする
- WordPressテーマJINを使用しているけれど、SEO対策がうまくいっているか不安
- OGPって聞いたことがあるようなないような?なんのことだろう?
こんにちは!裕希ヒロです。このブログでは、システムエンジニア出身の私がWEBマーケティングを学んで『稼ぐ力』を鍛える過程を発信しています。
この記事では、WordPressで発生しがちなOGP設定の過ちと対処方法について説明します。
ところで、Webサイトの運営には必須知識の「OGP」を知っていますか?もし知らなきゃ、相当にヤバいです。
実は、限りなく100%に近い方々がOGPの恩恵を受けています。例えば、X(旧Twitter)やLINEなど、主要なプラットフォームでURLを共有したときにWebサイトの中身を先取りしてくれる表示を見たことはありませんか?
一例: WordPress日本語サイト https://wordpress.com/ja/
に対するOGP表示。

なんとなく、見覚えのあるデザインでしょう。この表示は、記事のアイキャッチやタイトル、概要説明(デスクリプション)を綺麗に表示してくれることで、目にした人のアクセス率の向上が期待できる重要な要素です。
問題はここからです。あなたのWordPressサイトのOGP設定、ちゃんとできていますか?
OGP(Open Graph Protocol)とは、ウェブページのメタデータを標準化するプロトコルです。Facebookにより開発されました。OGPタグを使用することで、タイトル、説明、画像などの情報を指定し、視覚的に魅力的でクリック率の高いリンクプレビューを提供できます。
これによりユーザーの関心が増加し、新規ユーザーの流入が期待できます。現代では多くのプラットフォームやツールで活用されています。
兎にも角にも、まず最初に、あなたのOGPが大丈夫かを確認しましょう。確認には、OGP設定を確認してくれるWebツールを利用します。無料で様々なツールが存在しますが、キーワード検索でも有名なラッコツールを紹介します。
OGP確認:facebook、twitter、LINE、はてなのシェア時の画像・文章を表示 | ラッコツールズ🔧(別ウィンドウで開く)
ここまでの情報で、あなたのサイトがそのままで大丈夫なのか、それとも今すぐに対策が必要なのか、いずれかが明確になったことでしょう。問題があったあなたはラッキーです。この記事を読むことで問題を解決する知識が身につき、本日をもってその問題は解決されるはずです。
それでは具体的な問題と、その対策を説明します。
重要:本記事の前提条件
- All in One SEO を名指ししていますが、本質的な問題はその他のSEO対策プラグインでも発生するものです。All in One SEO を使っていないからといって安心するのではなく、OGPツールを使って内容を確認しましょう。その結果が全てです。
- OGP確認ツールを使わなくても、HTMLソースから簡単に確認することができます。例えば
<head>
タグ内をog:description
で検索してみてください。ここで2つ以上が検索HITしてしまったら問題です。 - この記事では、当サイトで利用している(2024/07/21現在) WordPressテーマ JIN での実例をもとに説明しています。JINに限らず、その他のテーマでもプラグインとの相性問題が発生しますので、油断でせずに確認しましょう。
本記事で説明する内容は本質的な内容を含むため、特定のプラグインやテーマに限って発生する問題ではなく、WordPressサイト運営の全般に該当する課題となります。この記事であがるプラグインやテーマを使っていないからと安心するのではなく、ぜひ一度確認してみてください。
基礎解説:JINとAll in One SEOプラグインの競合問題
WordPressテーマ「JIN」を使用いつつ、SEO対策において有名な「All in One SEO」プラグインをインストールしました。ところがOGP表示が意図した通りに行われない事象に遭遇してしまいました。
調査したところ、JINにおいては作者自身が All in One SEO プラグインの利用を明確に非推奨としています。
また、ひとつひとつの列挙はしませんが、他の有料テーマ公式サイトの発信情報を見ても、テーマ内蔵のSEO機能との重複問題について言及されていることがあります。
システムエンジニアの目線から補足解説
「有料テーマのSEO機能」と「All in One SEO」との重複とは、具体的に何を指しているのでしょうか?
ここでいう「重複」が指す範囲を正しく捉える必要があります。
- SEOのひとつに重要視される観点として、記事のメタ情報(デスクリプション、キーワード、その他)があります。これら記事毎のメタ情報を設定する機能を有料テーマでも有している場合があります。
- All in One SEO は非常に高機能で、無償版と有償版があります。もし有償版の機能をバリバリと使いこなしているようでしたら、そのまま使い続けても問題ありません。なぜなら、有料テーマとはいえSEO機能専門の有償プラグインには機能が全く及ばないためです。(もし、SEO専門プラグインがそこまでの差別化ができないようであれば、そもそも存在意義がないといえます)
- 一方、All in One SEO の無償版で済む程度で利用している場合、メタ情報の出力や、サイトマップ生成くらいの使い方しかしていないケースが大多数でしょう。スコアリング機能を意識している場合もあるかもしれませんが、日本語環境では英語圏ほどに正しく(意図した)動作をしませんので、躍起になるだけ時間の無駄です(将来、機能が洗練される可能性は否定できませんが)。
そして、JINテーマはメタ情報を出力する程度の目的であれば標準機能として具備しているため、わざわざ重厚長大な All in One SEO プラグインを導入する必要はないと結論づけることができます。管理画面もごちゃごちゃしてしまいますしね。
詳細解説:メタ情報(OGP情報等体)の競合問題の実例
引き続き JIN と All in One SEO を対象にした解説をしますが、この考え方でその他全てのケースでも点検が可能です。Webサイトの仕組みに関する知識が増えますので、一緒に確認してみましょう。
メタ情報出力が重複している実例
次の図(HTMLソース)を確認してください。 og:description
が重複している例です。

これ、よくないです。
OGPをどのように表示するかは、表示するシステム側の解釈になりますので「必ずこうなる」とは断言できませんが、プログラムのお作法から想像するに最初に記載されている方を優先されるケースが多いかもしれません。
そうなると、この場合は All in One SEO でせっかく丁寧に記載していても、テーマ機能の方では全く反映されておらず「何も対策をしていない」と等しい状態になってしまいます。あるいは、自動生成された意図せぬメタデスクリプションになっているかもしれませんね。
なぜ重複と内容の食い違いが生じてしまうのか
答えは、記事投稿画面でのメタ設定の場所が違うからとなります。
All in One SEO だとこのようなメタ設定画面になりますね。プレビューも含めて華やかになるのは魅力的です。

一方、JINテーマが内蔵しているSEOのメタ設定はこのようになります。見出しが「SEO設定」とあって非常に汎用的すぎるので、JINによる機能だとは分かりづらいのが不親切かもしれませんね・・・。

画像は全て Gutenbergエディターのものです。
対策のバリエーション
- もし、利用しているテーマがメタ出力機能を有している場合は幸運です。おそらくテーマ設定でチェックボックスのようなものでON・OFFをするだけで停止できるでしょう。
- 有名なテーマのひとつである SWELL においては、最初からメタ出力は別の手段で解決する設計方針になっている (外部リンク) ため、テーマ内蔵機能が邪魔をすることはありません。
- JINテーマにおいては、設定のみでは解決しないため、強引ですがテーマを編集します。(後述)
重複解消のための対策方法【初級者向け】
第一の方法として、最も綺麗な状況にするならば「素直にテーマ内蔵の機能だけを使って、余計なプラグインは停止しましょう」となります。
第二の方法として、「どうしてもSEOプラグインを使う必要があるんだ!!」という場合においては、テーマ内蔵のSEOメタ設定とSEOプラグイン側のメタ設定に二重投入するしかありません。当然、HTMLソース上では二重表示され続ける問題は継続しますのでHTML構造上は100点とは言えませんが、少なくとも情報のバラつきは解消することができます。
重複解消のための対策方法【中級者向け】
「テーマ内蔵のSEO機能があるのは分かったけど、どうしても All in One SEO プラグインを利用したいんだ!重複問題も解消したいんだ!!」
このようにお困りのあなた、安心してください。解決方法のヒントをお伝えします。
このレベル以降の対策はテーマによってのケースバイケースになりますので「ものによる」としか言えないため、ヒントという曖昧な表現をしています。JINテーマを例に解説しますので、JINテーマならば記載の手段がそのまま利用できます。
ただし、初心者では不慣れな操作が登場しますので安易に実施しないよう注意してください。
JINテーマでの対策方法
まず、テーマがどのように構成されているのかを把握します。
(2024/7現在の最新配布ソースを対象とします)
header.php
を見ると、OGPを出力している部分が以下のようになっています。

ここから読み取れるのは、OGPの出力に関するHTMLソースは ogp.php
に一元管理されているということです。実際、 ogp.php
を見るとOGP関連のメタ情報ばかりですので正しいようです。
ここで、2つのやり方が考えられます。
header.php
から、図の8行目の一文をまるまる削除して保存。その新しいheader.php
をアップロードする。ohp.php
ファイルの中身を全て削除して、空になったogp.php
をアップロードする。
どちらの手段をとっても結果は同じになります。そのうえで、後者「2」の ogp.php
の中身を空にする方法を推奨します。理由は、将来JINのテーマに更新がかかって再配布された時の更新作業の負担を削減するためです。
ここで「1」の手段を選択してしまうと、JINテーマを更新するときに同様の作業を必ず実施しなければなりません。単純に面倒くさいですね。
一方の「2」では、もし ogp.php
に更新がかかったとしても「そもそもJINのOGP出力に期待していないから中身を空っぽにしたので、そのまま空っぽであり続けてくれればよい」ことになりますよね。なので、今後も更新作業をする必要がないと言えます。(もし、ファイル名が変わったりすると修正が必要ですけどね)
結果、以下のように進めます。
ogp.php
を空にする
以下どちらかのケースになるはずです。
- JINのテーマを1つで運用している場合:
wp-content/themes/jin
- JINの子テーマを作成して運用している場合:
wp-content/themes/jin-child

一度アップロードしてしまえば、管理画面からも確認できるようになります。

WordPressのテーマには「親テーマ」と「子テーマ」という概念があります。多くのテーマ導入においては、オリジナルの「親テーマ」原本として保護しつつ、その内容を継承(コピーみたいなもの)をした「子テーマ」で運用することが推奨されています。
この手の作業は「子テーマ」で実施した方が事故が発生しづらく、子テーマとしての本領発揮する場面です。
結論:JINテーマでAll in One SEOプラグインを使用しないほうがいい理由
1. 公式サイトで非推奨と明確に取り上げられているから
JINテーマの公式サイトでも、All in One SEOプラグインは非推奨とされています。理由としては、JINテーマ自体にSEO対策機能が充実しているため、追加のプラグインが不要であることが挙げられます。
2. OGP重複による各種サイトでの取り扱いに悪影響があるから
OGP(Open Graph Protocol)のmetaタグが重複している場合、検索エンジンやSNSでの表示に問題が発生する可能性があります。具体的には、以下の影響が考えられます。
- 情報の混乱: 検索エンジンやSNSがどのmetaタグを優先すべきか判断できず、表示される情報が不正確になる可能性があります。
- SEO効果の低下: 検索エンジンがページの評価を正確に行えず、SEOスコアが低下する恐れがあります。
- ユーザー体験の悪化: SNSシェア時に適切なサムネイル画像やタイトルが表示されず、クリック率が低下する可能性があります。
JINを例にして具体的に例えると、OGP用のmetaタグが「JINテーマ」と「All in One SEOプラグイン」の両方で設定されている場合、SNSにシェアされた際に異なるサムネイル画像やタイトル、デスクリプションが表示されることがあります。
この時に困るのは誰でしょうか?そう、ユーザー(読者)です。ユーザーは混乱し、ページの信頼性が低下する可能性があります。
まとめ:JINテーマでのSEO対策を最適化する方法
この記事では、JINテーマを使用する場合、All in One SEOプラグインの併用は避けるべき理由を説明しました。また、重複への対応策を説明しました。さらに、どうしても All in One SEO を利用したい場合は JIN側のOGP機能を無効化する方法を説明しました。
JINに限ったことではありませんが、テーマの機能を最大限に活用するために公式サイトの情報は最低一度は確認したうえで、SEO対策を最適化しましょう。適切な対策を講じることで、検索エンジンでの評価を高め、サイトのアクセス数を向上させることができます。
以上、裕希ヒロがお送りしました。