こんばんは、k太郎です。
先日WordPress案件で使用したプラグインが便利だったので紹介したいと思います。
投稿画面で同じカスタムフィールドを繰り返し使用したい!
例えば下記のように各セルがカスタムフィールドに対応していてセルがいくつ必要かわからない場合、公開前後に慌てて予備のカスタムフィールドを追加するといったことがあるかと思います。
投稿者側で自由にカスタムフィールドを増減でき、かつそれがテンプレートに反映されたら便利ですよね。
そんな時に使わせて頂いたのがこちら!
WordPress のカスタムフィールドを簡単・便利に使えるようになるプラグイン「Smart Custom Fields」作った。 | モンキーレンチ
WordPressでの設定
インストール後、左のメニューから新規追加を選択。
編集画面はこんな感じ。
カスタムフィールドを繰り返し使用する場合「Reapeat」にチェックを入れる事でグループが生成されます。
グループ内にカスタムフィールドを追加する場合「Add Sub field」をクリックします。
グループを追加する場合「Add field」をクリックします。
今回はこんな感じで編集しました。
これで固定ページでこれらのカスタムフィールドが繰り返し使用できます。
投稿画面に追加したグループが表示されます。
+-でグループを増減できます。
こちらを編集すればWP側の設定は完了です。
テンプレートの記述
<table>
<tr>
<th>種類</th>
<th>値段</th>
<th>個数</th>
</tr>
<?php
$oyasai_group = SCF::get( 'cf_oyasai_group' );
foreach ( $cf_oyasai_group as $field_name => $field_value ) {
?>
<tr>
<td><?php echo esc_html( $field_value['cf_kind'] ); ?></td>
<td><?php echo esc_html( $field_value['cf_nedan'] ); ?></td>
<td><?php echo esc_html( $field_value['cf_kosu'] ); ?></td>
</tr>
<?php } ?>
</table>
テンプレートにはこのように記述します。
グループ名を設定した変数をforeachで回して、各カスタムフィールド名をキーに値を取り出します。
出力結果
無事入力内容が出力されました。
この他詳しい仕様については作者様サイトをご参照ください。
WordPress のカスタムフィールドを簡単・便利に使えるようになるプラグイン「Smart Custom Fields」作った。 | モンキーレンチ
使ってみて
WordPress側の設定方法も分かりやすく、テンプレートでの記述もシンプルでとても使いやすかったです。
Smart Custom Fieldsは新たな機能を追加していく予定だそうです。
今後も楽しみですね!
[…] WordPressプラグイン「Smart Custom Fields」/I.M.Design […]
種類
値段
個数
$field_value ) {
?>
———————————————-
———————————————-
まで全然表示がされないですけど何ででしょうか
こんにちは。
==========================================
$field_value ) {
?>
==========================================
もしかして、 $oyasai_group = SCF::get( ‘cf_oyasai_group’ );の
↑って、↓スペルミス?
foreach ( $cf_oyasai_group as $field_name => $field_value )
$oyasai_groupを
$cf_oyasai_groupに直した。