OGPのog:typeでwebsiteやblogを設定するときの注意点とPHPでの振り分け方法

  • あとで読みたい人は…

ただいまhead部分をコーディング中の@cappeeです。

OGPについては以前も何度か記事を書いてますが、今回は og:type についての注意点です。

前回の記事はこちらからどうぞ。
ソーシャルボタンの設置まとめとボタンの幅や吹き出しの直し方、コーディング方法など
FacebookのOGPに fb:admins と fb:app_id の設定は必要?htmlタグのxmlnsは?
「Open Graph Pro」を今すぐ停止し、プラグインを使わずにFacebookのOGPを設定すべし

og:typeでwebsiteやblogを設定するときの注意点

OGPのog:typeの設定方法をみると、ウェブサイトには「website」と記述し、ブログには「blog」と記述するように書かてれいます。

ウェブサイトの場合

<meta property="og:type" content="website"/>

ブログの場合

<meta property="og:type" content="blog"/>

間違いではないのですが、これだけだと不十分なのです。

website や blog の指定は基本的にドメインのルート部分にのみ存在すべきで、トップページ以外は article と指定しましょう。

下層ページの場合

<meta property="og:type" content="article"/>

PHPでの振り分け方法

PHPを使用出来るサーバーやWordpressを使っている場合は、このようにトップページとそれ以外の下層ページで記述を振り分けます。

ウェブサイトの場合

<meta property="og:type" content="<?php if($_SERVER["REQUEST_URI"] == "/"){ ?>website<?php } else { ?>article<?php }?>">

ブログの場合

<meta property="og:type" content="<?php if($_SERVER["REQUEST_URI"] == "/"){ ?>blog<?php } else { ?>article<?php }?>">

この振り分けを応用すれば、タイトルの表示方法をトップページと下層ページで変えたりと便利ですよ。

【2016.11.20 追記】
コメントにてご指摘いただきました。
サーバ環境によって必ずしも”/”が帰ってくるとは限らない$_SERVER["REQUEST_URI"]で判断せず、以下のようにした方がよいとのことです。
ご指摘ありがとうございます。

if ( is_front_page() || is_home() ) {
echo '';
} else {
echo '';
}
Pocket
article clipper OGPのog:typeでwebsiteやblogを設定するときの注意点とPHPでの振り分け方法

2 thoughts on “OGPのog:typeでwebsiteやblogを設定するときの注意点とPHPでの振り分け方法

  1. Pingback: WordPress の OGP をプラグインを使わずに設定する。og:description は本文から自動生成。 | 雑記 BOOOKs

  2. サーバ環境によって必ずしも”/”が帰ってくるとは限らない$_SERVER["REQUEST_URI"]で判断せず、
    if ( is_front_page() || is_home() ) {
    echo '';
    } else {
    echo '';
    }

    のようにした方がよいのではないでしょうか。

コメントを残す

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)