Smart Custom Fields でカテゴリーやタグにもカスタムフィールドを設置できるようになりました。

カテゴリー、タグ、カスタムタクソノミーへのカスタムフィールドの設置

Smart Custom Fields をバージョンアップして、カテゴリー、タグ、カスタムタクソノミーにもカスタムフィールドを設置できるようになりました。

カテゴリー、タグ、カスタムタクソノミーに設定したカスタムフィールドのデータは次のメソッドで取得できます。

// 取得したいタームのID
$term_id = '1';

// 取得したいタクソノミーの種類 category | post_tag | カスタムタクソノミー
$taxonomy = 'category';

// 'カスタムフィールド名' のデータを表示
echo esc_html( SCF::get_term_meta( $term_id, $taxonomy, 'カスタムフィールド名' ) );

// 全てのメタデータを表示
var_dump( SCF::get_term_meta( $term_id, $taxonomy ) );

デフォルト値の扱いの変更

これまでは既にある投稿などに対して新たにデフォルト値を持ったカスタムフィールドを設定した場合、その投稿の編集画面に行ってカスタムフィールドにデータを入力して保存しない限り、echo SCF::get( 'hoge' );などとしても何も値が返りませんでした。そのため、まだ保存していないときに編集画面を見たときはデータ(デフォルト値)が表示されているのに表示画面ではデータを取得できない、という問題がありました。

今回のバージョン 1.4.0 から、データがまだ保存されていない場合は、表示画面でも設定されたデフォルト値を返すようになりました。これまでと同じ動作にしたい場合は下記のフックを利用して戻すことができます。

// デフォルト値の扱いを 1.4.0 未満と同じにする
add_filter( 'smart-cf-is_use_default_when_not_saved', '__return_false' );
  • ブックマーク
  • Feedly

この記事を書いた人

キタジマタカシ

長崎在住、フリーランスのWordPress テーマ / プラグインデベロッパー。 多数のプロダクトをオープンソースで開発・公開しています。現在は WordPress 有料テーマ Snow Monkey を開発・販売しています。