カスタムフィールドに入力した値(get_post_meta)が表示されない時に確認する項目

  • このエントリーをはてなブックマークに追加
  • このエントリーをはてなブックマークに追加

WordPressでカスタムフィールドに入力した値を出力するとき
うまくいかないときに確認する項目のリスト。おぼえがきその1。

関数リファレンス/get post meta|WordPress Codex 日本語版

  1. コードに間違いはないか?
  2. スペルミス、全角半角の間違い、余分なスペースなど入ったりはしていないか?
    コーディング用フォントを使って確認するのも手。
    ゆたぽん(コーディング)など。

  3. echo を忘れていないか?
  4. 個人的によくやらかすミス。
    echo get_post_meta() の echo をなぜかよく記述し忘れる…
    文法をちゃんと理解していればありえないミスなんだろうと思うけど。

  5. ファイルの文字コードを間違えていないか?
  6. WordPress は UTF-8 で作るのが基本です。
    ファイル内では UTF-8 の指定をしてあるのに、実は shift-jis で保存されていたりするとうまくいかなくなります。

今回は 3. ファイルの文字コードを間違えていないか? でだいぶ時間を食いました。
文字コードを間違えていたのに気付いた理由は、

<?php echo get_post_meta($post->ID, 'ほげ', true); ?>

の ほげ 部分を日本語と英数両方で試して(日本語と英数両方のキーがあることが前提)、
英数の場合だけきちんと表示されたため。

UTF-8で保存しなおして上書きしたら、日本語キーの場合でもきちんとカスタムフィールドの値が表示されました。

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

コメントを残す

メールアドレスが公開されることはありません。

日本語が含まれない投稿は無視されますのでご注意ください。