WordPress

Advanced Custom Fieldsのフィールド値がプレビュー画面で表示されない問題の解決方法

記事内に商品プロモーションを含む場合があります

WordPressのカスタムフィールドプラグイン「Advanced Customf Fields」を使用して、カスタムフィールドを管理しているとき、プレビュー画面ではフィールドの値が表示されない問題が発生しました。

この記事ではこの問題の解決方法を解説します。

プレビュー時に正しい投稿IDが渡されないのが原因

Advanced Custom Fieldsを使ってフィールド値を取得するときに、ACFが取得している投稿IDとプレビュー時の投稿IDに違いがあるときに、この不具合が発生します。

解決方法としては、functions.phpに以下のコードを追加します。

function fix_post_id_on_preview($null, $post_id)
{
  if (is_preview()) {
    return get_the_ID();
  } else {
    $acf_post_id = isset($post_id->ID) ? $post_id->ID : $post_id;
    if (!empty($acf_post_id)) {
      return $acf_post_id;
    } else {
      return $null;
    }
  }
}
add_filter('acf/pre_load_post_id', 'fix_post_id_on_preview', 10, 2);

※参考
Preview solution !
https://support.advancedcustomfields.com/forums/topic/preview-solution/page/3/#post-134967



ご覧いただきありがとうございました!

各種SNS等で活動を行っております。よろしければ併せてフォローしていただけるとうれしいです!
X(旧Twitter)
Instagram
note
SNSではブログでは書けない内容や、管理人のプライベートな情報の発信を行っています。DM等でのご相談も随時承っておりますので、どうぞよろしくお願いいたしますm(__)m

「いいね!」と思ったら、クリックお願いいたします<m(__)m>
にほんブログ村 メンタルヘルスブログ 統合失調症へ 統合失調症ランキング
にほんブログ村 介護ブログ 障がい者福祉・介護へ 障がい者ランキング
にほんブログ村 企業ブログ IT・情報通信業へ IT・通信業ランキング
ABOUT ME
立花浩紀
Web制作を専門とするフリーランスです。就労継続支援B型の職業指導員をしていました。統合失調症の当事者でもあります。福祉ITラボではITと障害福祉を掛け合わせた情報を発信しています。放送大学 心理と教育コース 所属。社会福祉士養成課程。

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA