カスタムフィールド

カスタムフィールド機能の活用についてテストしてみる。スクリプトの追加なしで、どの程度使えるかの確認。

カスタムフィールドを表示するには、右端の3点アイコンから、「設定」「パネル」「カスタムフィールド」の順に選択する。これで、編集画面の下方にカスタムフィールドフォームが表示されるようになる。

「名前」と「値」の入力フォームがあり、「カスタムフィールドを追加」できるボタンがある。名前はマルチバイト文字でも構わないように思う。表示されているのは、あくまでも追加フォームであり、「名前」を入れて、追加ボタンを押すことで、カスタムフィールドが登録される。

ページ内で表示するには、the_meta() で、リスト形式で、名前と値を列挙してくれるようだ。echo post_custom(‘名前’)で、個別に出力することもできるらしい。get_post_meta(…)や、get_post_custom($post_id)を使えば、まとめて配列で取得し、個別のスタイルを宛てるには便利かも知れない。

the_meta()の出力、これだけでも使えるかも知れないが、順番が解らないと個別のスタイルは難しい。

<ul class='post-meta'>
<li><span class='post-meta-key'>%s</span> %s</li>\n
...
</ul>

ホームの投稿一覧は、これで良いかも知れない。シングル投稿表示ページ内に表示するための方法は、スクリプトを編集する以外の方法はないのか。それらしきものが無いのであれば、ショートコード化する必要もあるだろう。あれだけ、たくさんのブロックがありながら、カスタムフィールドの登録内容を表形式で表示するようなブロックが無い。the_meta()の出力を組み込むショートコードを作ってみる。

右はシンプルにthe_meta()の出力

表形式にするのは、スタイルでも良いかも。スタイル又はクラスを指定するパラメータの追加をすれば良い。

名前がspanで囲まれているので、表(テーブル)のような見栄えにするのは、スタイルだけでも可。ブレークタグはそのまま効いている。

その下は、post_custom(‘名前その1’)が返してくるデータ。

その下は、get_post_custom()の出力。余分なものまで出力される。

掲載日時: 2022年8月10日(水) 11:13