WordPress
Facebook
OGP
カスタマイズ
Jetpack

[WordPress]Facebookに自動投稿するときのカスタマイズ

More than 1 year has passed since last update.

WordPressでの案件がかなり増えていて学ぶことも日々多いですが、自分自身のサイトもWordPressで運営していて、各種SNSと連携しています。

WordPressに投稿すると自動で連携させたSNSへ投稿されるようにしていて、アイキャッチも設定しているのに(特に)Facebookだと表示されたりされなかったりしてました。

今回はその解決のための自分自身の健忘録です。

アイキャッチは1:1.91の比率で作成する

Facebookの使用は変わることもありますが、縦・横を1:1.91の比率で作成すると上手く表示されます。

その際の最小サイズはwidth:600px、height:315pxですが、大きく表示させたいならば推奨サイズであるwidth:1200px、height:630pxがよいかと。

ちなみに私の場合、1280px:670pxで作成しています。
比率があっていればちゃんと表示されるので問題なし!

Jetpackだと改行なし投稿になる問題

Jetpackはとても便利な機能が多く利用している人も多いのではないでしょうか。
Jetpackで各種SNSと連携させ、投稿を自動でSNSに連動させていると起こるのがFacebookの改行なし全文表示。

これの解決策を見つけ、実装はしましたがその後にブログを更新していないので確かめていませんが、以下のコードをfunction.phpに追記してください。
※念のため、バックアップしてから追記してください。

functions.php
function set_title_publicize() {
    global $post;
    $publicize_custom_message = sprintf('新しい記事『%s』を投稿しました。ぜひ読んでみてください♪'.get_the_title( $post -> ID ) );
    update_post_meta( $post -> ID, '_wpas_mess', $publicize_custom_message );
}
add_action( 'the_post', 'set_title_publicize' );
add_action( 'save_post', 'set_title_publicize' );
add_action( 'draft_to_publish', 'set_title_publicize' );
add_action( 'new_to_publish', 'set_title_publicize' );
add_action( 'pending_to_publish', 'set_title_publicize' );
add_action( 'future_to_publish', 'set_title_publicize' );

JetpackのOGPを無効化する

JetpackはWordPress公式の便利プラグインで必要な機能だけを使うこともできるので導入していますが、私はJetpackのOGPを無効化して、自力でOGPとTwitter Cardを設定しています。

functions.php
// JetpackのOGP無効化
add_filter('jetpack_enable_open_graph', '__return_false');

このコードをfunctions.phpに追記するだけでOKです。
OGPの自力実装は長くなりそうなのでまた別記事で。

ご閲覧ありがとうございました。


【参照サイト様】