作業の覚え書き

Web 制作 Memo

By

WordPressでOGPタグ設定 – twitter card


/*********************
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 = 'TOPページ&アイキャッチ画像がないときに使われる画像のURL';
}

//出力するOGPタグをまとめる
$insert .= '' . "\n";
$insert .= '' . "\n";
$insert .= '' . "\n";
$insert .= '' . "\n";
$insert .= '' . "\n";
$insert .= '' . "\n";
$insert .= '' . "\n";
$insert .= '' . "\n";
$insert .= '' . "\n";

//facebookのapp_id(設定する場合)
$insert .= '' . "\n";
//app_idを設定しない場合ここまで消す

echo $insert;
}
} //END my_meta_ogp

add_action('wp_head','my_meta_ogp');//headにOGPを出力

Card validatorで表示をチェック!
https://cards-dev.twitter.com/validator

FBシェアデバッガー
https://developers.facebook.com/tools/debug/

参考:https://saruwakakun.com/html-css/wordpress/ogp

By

【メモ】PHPで分岐

WordPressではなく本家サイトでこういうことをやろうとしてるんだけどね。
既にインクルードはSSIからPHPに移行済み。

WordPressのテンプレートをカテゴリ別に切り替える

そろそろちゃんとやりますか。

【追記】
最近のソーシャルプラグインは「LINEで送る」が入ってるんだなぁ。