短いメタデータ(descriptions)。All in One SEO Packの自動生成が原因でした。

公開: 更新:2016/10/16


wordpress

Googleのウェブマスターツールでこのブログの状況を確認していたら、いくつかの記事に「短いメタデータ(descriptions)」という警告が表示されていることに気が付きました。

確認してみると、たしかにmeta descriptionが短すぎます。10文字くらいしか表示されていません。

このブログでは、ワードプレスのプラグイン、All in One SEO Packでmeta descriptionを自動生成しているのですが、どうやら、いくつかの記事でそれが上手く機能していないようなんです。

今回は、その原因と対策をご紹介します。

スポンサーリンク

短いmeta descriptionが生じる原因は、半角空白

All in One SEO Packで各記事のmeta descriptionを自動生成すると、記事冒頭の160文字を抜き出して、記事抜粋として設定してくれます。
これはとても便利な機能なのですが、先ほどご説明したとおり、いつかの記事では正常に機能していませんでした。

それらの記事を比較したところ、ひとつ共通点がありました。

それは、記事の冒頭部分に半角スペースを含んでいるということ。
半角スペース以降の文字が見事に表示されていないんです。

プラグインのソースコードを確認したわけではありませんが、おそらく原因はこれだろうと思います。
実際、半角スペースを全角スペースに書き換えた場合、また、半角スペースを に書き換えた場合は、いずれも正常に記事の抜粋を取得出来ました。

ただ、よくわからない点がひとつあって、半角スペースを含んでいても抜粋を正しく取得できる場合もあるんですよね。
うーん。謎です。

対策

で、どうしたかというと、All in One SEO Packでmeta descriptionを自動生成するのをやめました。
その部分は、プラグインに頼らず、自力でどうにかすることにしました。

と言っても簡単で、次のコードをheader.phpに記入しただけです。
このコードは、【WordPress】プラグインを使わずに記事ごとに自動でkeywordsとdescriptionを設置する方法|ONZEを参考にさせてもらいました。ありがとうございます。

<?php  /*個別記事の抜粋を表示*/ ?>
<meta name="description" itemprop="description" content="<?php
if (is_single()){
$content_summary = strip_tags($post->post_content);
$content_summary = ereg_replace("(\r\n|\r|\n)", "", $content_summary);
$content_summary = mb_substr($content_summary, 0, 160);
echo $content_summary; } ?>" />
スポンサーリンク
スポンサーリンク
wordpress
WordPressをブルートフォースアタックから守るために、最低限やっておきたい.htaccessの設定

世界中で頻発する、WordPressを狙った不正なアタック。その手口の多くは、「ブルートフォースアタック」と呼ばれる、パスワードの総当たり攻...

no image
スミソニアン学術協会 アートの検閲行為のその後

スミソニアン学術協会の検閲行為のその後 スミソニアン学術協会の最高経営責任者であるWayne Clough氏は、ナショナルポートレートギャラ...

no image
世界の一流アーティストによる作品を、超激安価格でコレクションする革命的な方法とは? s[edition]について

昨日、ダミアン・ハーストの作品が8ドルで買える、s[edition]というサイトを紹介しました。 なんでハーストの作品がこんなに安いかって、...

有名ブロガーも愛用するレンタルサーバ「シックスコア」。WordPressサイトを引越すときには、ファイアーウォールの設定に要注意です。

これまで、さくらのレンタルサーバで運営してきたこのブログ。今日から心機一転、シックスコア(sixcore)に、WordPressを連れてお引...

「人は歳をとると老化する」は、枠にはまった考え方?

 「病は気から」という諺(ことわざ)があります。この言葉、とてもシンプルですが、核心をついた言葉だと思います。 実際私は、心を病んだために病...