Googleの検索表示からスニペットが消えたので原因を探したら単なる自分のミスだったという話



ある日検索結果から自分のサイトがタイトルとURLのみ表示されていて、そのページの説明文(スニペット)が消えていたので、メタディスクリプションや抜粋の事を調べていろいろ試した結果、実は単純に自分のミスだったというまさかの結末でした。

検索結果からスニペットの表示が消えた

本当は日々GoogleアナリティクスやSearchCosoleなどでこまめにチェックしていればいいのでしょうが、ズボラな私はたまにSearchCosoleの「検索パフォーマンス」や「検索キーワード」を見る程度で、自分のサイトを自分で検索してみるという事はめったにしませんでした。

スニペットが表示されていない事に気付く

そんな私がある日検索して、自分の運営しているあるビジネス情報サイトが検索結果に表示されているのを確認した時、タイトルとURLは表示されているのに、その下に表示されていた説明文(スニペット)が消えている事に気付きました。

そしてスニペットの代わりに「このページに関する情報はありません」という文が表示されていました。

記事別ではなくサイト全体だった

少し不安になった私は、他のページや自分が運営している他のサイトはどうなっているのか確かめるため、検索キーワードを変えて、自分のサイトの別のページが表示されるよう検索し直して確認してみてると、今回スニペットが消えていたサイトはやはり同じようにスニペットは表示されませんでした。さらに別のページも検索してみましたが、同様でした。ただ、別のサイトは大丈夫でした。

つまり、今回対象となったサイトは、ページ別にスニペットが表示されたりされなかったりするのではなく、サイトの全てのページにおいてスニペットの表示がされない状態だったのです。

スニペットが表示されない原因を調べてみる

今回スニペットが表示されなくなったサイトはWordPressで作成していて、使っているテーマにはSEO対策として各投稿編集ページにデフォルトで「メタディスクリプション」を記述できる機能があるのですが、私はそこに何も記述していませんでした。そこに記述していれば、その内容が優先的にスニペットに表示されるというものです。

また、投稿編集ページには「抜粋」を記述する欄もありますが、私のサイトはそこも空欄のままです。「抜粋」はサイトにて各投稿の一覧を表示した場合に、各投稿記事の内容を簡潔に表示させるものであり、元々はサイト内で使用するための機能ですが、メタディスクリプションの記述がない場合はこの「抜粋」の内容がスニペットとして表示されることになります。

メタディスクリプションも抜粋も記述していない私のこのサイトの場合、スニペットとして表示されるのは投稿の先頭の文となる設定になっています。

事実つい先日までは投稿の先頭の文がスニペットとして表示されていたことを確認できていました。それがいつの日からか何も表示されなくなっていたのです。

ネットでは同じような現象がなかなか見つからない

そのような出来事は私にとってはじめてであり、何が原因か検討もつかなかったので、まずはネットで調べてみる事にしました。最初は私が無知な事もあり“スニペット”という言葉を知りませんでした。なので“メタディスクリプション”や“抜粋”という言葉で調べました。

すると、ほとんどが「メタディスクリプションを設定しているのに反映されない(記事の最初の文や抜粋が表示されてしまう)」という現象(意図していない文章が表示されてしまう)に対するものばかりで、大体が使用しているテーマやSEO用のプラグインの相性や設定などに起因するもので、そこに書かれている設定をしていない私には参考にならないものばかりでした。

なかにはGoogleがおこなった一時的なテスト(検索結果からスニペットを省く)による影響ではないか、との記事もありましたが、私のサイトだけがスニペットの表示がないのはおかしいし、そもそもそのようなテストは海外で行われているようでしたので、全く該当しませんでした。

そして私のように検索結果の下部の説明書き(スニペット)自体が消えているという現象に対しての回答はなかなか見つけることができませんでした。

Googleアップデートの影響か?

そんな中、もしかしたらこれかも、と思えるものが一つありました。それは、Googleのアップデートにより、「メタディスクリプションがコンテンツの内容と合っていないと表示されなくなる」というようなものでした。

今回対象となったサイトは、メタディスクリプションや抜粋の設定はしていませんが、記事の先頭にコンテンツの内容の概要を書いており、以前はそれがスニペットとしてちゃんと表示されていました。

そして改めて確認してみても、問題があるようには思えなかったのですが、Googleのアップデートにより、その基準が厳しくなったのかもしれないと思いました。あるいは、別途メタディスクリプションを設定しなければならないようになったのか・・・・

だとするとサイトの全記事(150記事くらい)の先頭の文を書き直ししなければならないのだろうか?と、ちょっとうんざりな気分にもなりました。すでにちゃんと要約してあるはずなので、それをさらに質をあげなければならないし、ページ数も結構あります。でもGoogle先生には逆らえないので諦めるしかありません。

原因は単なるミスというあっけない結末

ただどうしてもまだ釈然としない部分がありました。私が運営している他のサイトもコンテンツの内容こそ違うものの、基本的には同じような設定で同じような書き方をしているのにスニペットはきちんと表示されているのです。

もしGoogleのアップデートが原因ではなかった場合、全記事の先頭文を書き直してしまうと、全くの無駄骨になってしまいます。

最初にやるべき事をやっていなかった

全記事の先頭文を書き直すかどうか迷っていた時、何気なくまた検索結果の表示を見てみました。何もしていないので当然スニペットは消えたままです。そして「このページに関する情報はありません」とうい文面も相変わらず表示されたままだったのですが、その下になにやらリンクがはられていましたので、何気なくクリックしてみました。

以前はその存在に気付かなかったその謎のリンクをクリックしてみると、Googleの”Search Cosoleヘルプ”の「検索結果の表示に問題がある理由」というページが表示されました。そしてそこに「タイトルやスニペットに関する問題」と書いてある箇所があったのでそこをクリックすると項目が二つあり、そのうちの一つに「スニペットが存在しない場合」の原因が書いてありました。

本当は最初にここを見るべきでした。そこに気付かなかった為に結構な時間を浪費してしまいました。

robots.txtでページがブロックされてる?

そこには「robots.txtでページがブロックされてる」と書かれていましたので、そのサイトで設定しているrobots.txtを確認してみました。すると以下のような記述になっていました。

User-agent: *
Disallow: /

つまりサイト全体が検索エンジンによるクロールを拒否している状態になっていたのです!

これでは検索結果に表示がちゃんとされないのは当然です。でも何故以前はスニペットが表示されていたのでしょうか?それに、クロールを拒否している状態なら何故タイトルやURLは検索結果に表示されているのでしょうか?そしてそもそもクロールを拒否する設定をした覚えもないのに、何故拒否設定になってしまったのでしょうか?

原因は単純なミスだった

いろいろと記憶をたどっていった結果、クロールが拒否設定になっていたのは、少し前にこのサイトのバックアップサイトを作った時に、バックアップサイトをクロール拒否設定にするところを間違えて本サイトをクロール拒否設定にしてしまった事によるものでした。そして案の定、バックアップサイトの方はクロールされる設定になっていました。

私のサイトはWordPressで作成しているので、表示設定の「検索エンジンでの表示」の箇所のチェックが本サイトとバックアップサイトで逆になっていたので、それを戻すことで解決するはずです。念のためrobots.txtに反映されていることも確認してましたが、ちゃんと反映されていました。

残る疑問も解決

あと、クロールが拒否されているのに何故タイトルやURLが検索結果に表示されているのかも、Search Cosoleヘルプの「検索結果にページ情報が表示されない」というページの「このサイトを所有している場合」という箇所に書いてありました。

今まで検索結果に表示されていたサイトは、クロールを拒否しても、スニペットは非表示になりますがそのページ自体は非表示にならないようです。私のようにミスでクロールを拒否にしてしまった人にとっては有難い仕組みです。

逆にページやサイトを完全に検索結果から削除したい場合は、サイト自体を削除したり、noindexを設定するなど別の方法でおこなう必要があるようです。

無事に回復

ちなみに私の場合、約10日後には無事スニペットが表示されるようになりました。自分の単純なミスに気付かず、また知識が足りなかった事もあり、解決するまでにずい分と遠回りしてしまいましたが、おかげでいい教訓・勉強になりました。

ほとんどの人にはあまり役に立たない記事かもしれませんが、自分のミスとその回復過程の備忘録としてこの記事を書きました。