今回は、プラグインなしでOGPを実装する方法を解説していきます。
「OGPってなに?」という方向けに解説しますと、TwitterやFacebookでカード形式でリンク表示してくれるものです。
たとえばこんな感じ
よくTwitterとかで見ますよね。
これです。
それではさっそくいきましょう!
スポンサーリンク
プラグインなしでOGPを設定する方法
やり方は簡単で、3STEPで解説していきます。
- functions.phpにコードを貼り付ける
- それぞれidなどを設定する
- きちんと設定されているかの確認
それではそれぞれ解説しつつ、設定していきましょう。
STEP1:functions.phpにコードを貼り付ける
まずは、OGPを設定するためのコードをfuncitons.php
にコピペしていきます。
OGPコードの参考【WordPress】OGPとTwitterカードをプラグイン無しで設定する方法
function my_meta_ogp() {
if( is_front_page() || is_home() || is_singular() ){
global $post;
$ogp_title = '';
$ogp_descr = '';
$ogp_url = '';
$ogp_img = '';
$insert = '';
if( is_singular() ) {
setup_postdata($post);
$ogp_title = $post->post_title;
$ogp_descr = mb_substr(get_the_excerpt(), 0, 100);
$ogp_url = get_permalink();
wp_reset_postdata();
} elseif ( is_front_page() || is_home() ) {
$ogp_title = get_bloginfo('name');
$ogp_descr = get_bloginfo('description');
$ogp_url = home_url();
}
//og:type
$ogp_type = ( is_front_page() || is_home() ) ? 'website' : 'article';
//og:image
if ( is_singular() && has_post_thumbnail() ) {
$ps_thumb = wp_get_attachment_image_src( get_post_thumbnail_id(), 'full');
$ogp_img = $ps_thumb[0];
} else {
$ogp_img = '';
}
//出力するOGPタグをまとめる
$insert .= '<meta property="og:title" content="'.esc_attr($ogp_title).'" />' . "\n";
$insert .= '<meta property="og:description" content="'.esc_attr($ogp_descr).'" />' . "\n";
$insert .= '<meta property="og:type" content="'.$ogp_type.'" />' . "\n";
$insert .= '<meta property="og:url" content="'.esc_url($ogp_url).'" />' . "\n";
$insert .= '<meta property="og:image" content="'.esc_url($ogp_img).'" />' . "\n";
$insert .= '<meta property="og:site_name" content="'.esc_attr(get_bloginfo('name')).'" />' . "\n";
$insert .= '<meta name="twitter:card" content="summary_large_image" />' . "\n";
$insert .= '<meta name="twitter:site" content="ツイッターのアカウント名" />' . "\n";
$insert .= '<meta property="og:locale" content="ja_JP" />' . "\n";
echo $insert;
}
} //END my_meta_ogp
add_action('wp_head','my_meta_ogp');
貼り付け方は、「外観→テーマエディター」を選択して下記の画像のように追加してください。
STEP2:それぞれidなどを設定する
そしたら、 $insert .= '<meta name="twitter:site" content="ツイッターのアカウント名" />'
この部分の「ツイッターアカウント名」というところに、自分のアカウント名を入れてください。
やり方は@〜で書けばOKです。
僕の場合は@yuuuugablogです。
STEP3:きちんと設定されているかの確認
最後にきちんとOGPが設定されているかの確認のために、こちらのTwitter公式のCard validatorというサービスを使ってきちんとカード形式で表示されているか確認してください。
やり方は上記のように、URLを貼り付けてボタンをクリックすればOKです。
これで完了です!
あとは、Twitterで記事のURLを貼るだけでカード形式で表示してくれます。
スポンサーリンク
プラグインはバグの元。入れすぎないのが吉
これは何度も言っているのですが、わざわざコピペでできるようなものを(どうしても難しい場合には別ですが…)プラグインを使って実装するのはマジでバグの元なのでやめましょう。
なので入れすぎないようにしましょう。
入れるべきプラグインはこちらの記事WordPressで必ず入れるべき、おすすめプラグイン9選【10個以上はアウト】で解説しているので、気になる方はどうぞ。
それでは今回は以上です。
記事が参考になれば幸いです。
最後までみてくださり、ありがとうございました。
[sc_blogcard url=”https://yuuuugablog.com/programming/wordpress/recommended-plugin”]