wordpressで記事を書いた後にfacebookにシェアする時にサムネイル(アイキャッチ画像)が表示しない場合、facebook Debuggerでキャッシュのクリアをすると表示されるようになるのですが、これを毎回やらなきゃいけないのは面倒だと。
探してみると、自動でfacebookのキャッシュをクリアする方法がいくつかあったのですが、設定が面倒だったり、すぐに反映されなかったり。
で、ようやく理想的な方法が見つかったのでご紹介↓↓↓
参考:Facebook のキャッシュを URL Linter で更新するのが面倒なので記事の公開・更新時に自動的にキャッシュを更新させる。
wordpressの使用中のテーマの『functions.php』に下記のコードを入れるだけで、投稿(更新)と同時にfacebook Debuggerでキャッシュのクリアをした状態になります。
class my_facebook_debugger { private $api = 'https://graph.facebook.com?id=%s&scrape=true'; public function __construct() { add_action( 'transition_post_status', array( $this, 'debugger' ), 10, 3 ); } public function debugger( $new_status, $old_status, $post ) { if ( $new_status === 'publish' ) { $t = wp_remote_post( sprintf( $this->api, get_permalink( $post->ID ) ) ); } } } new my_facebook_debugger();
助かりました!感謝です。
元シンガーソングライターで、メンズ美容ブログ、パンブログもやってます。たまにテレビに出てたりします。最近はTikTokも頑張ってます。