CSプレイヤーズへのカスタムフィールドの出力をCustom Field Templateを使ってカスタムする

コンサドーレ札幌の選手データをとりまとめたCSプレイヤーズのサイトでは、テーマにTwenty Elevenを使っている。
選手個々人のデータはカスタムフィールドに格納し、テーマファイルを改変して表示させている。

【現在の問題点】

  • テーマのアップデートや変更に際して常にテーマファイルを改変しなくてはいけない。
  • ページ毎のよりこまかい表示設定ができない。

そこで、プラグインであるCustom Field Templateを使用して表示させる方法に変更することにした。

【理由:メリット】

  • 投稿内に記述するので、テーマの変更に影響うけない。
  • 個々の投稿記事にShortcodeを記述する方法になるので、ページ毎に細かい設定ができる。

【デメリット】

  • テーマを改変する方法にくらべて、個々の投稿記事にいちいちShortcodeを記述する必要がある。

【今回使う機能:FORMAT機能】

(環境)

  • WordPress 3.5.1
  • Custom Field Template 2.1

今回使う機能は、Custom Field TemplateのFORMAT機能。これまでも、CSプレイヤーズでは、Custom Field TemplateのTemplate機能は使っていたのだが、FORMAT機能は使っていなかった。今回をこれを導入する。この二つの機能は簡単に述べると、下記の様な違いがある。

  • Template機能:カスタムフィールドの入力を支援する機能
  • FORMAT機能:カスタムフィールドの出力を支援する機能

FORMAT機能は、実際に使ってみると、すごく便利。

Template機能に関しては、従来より使用しておりすでに説明済みなので、ここでは省略。

カスタムフィールドテンプレートの設定画面から、フォーマットの設定をおこなう。(cft)and (cftsearch) Shortcode Formatのタグにアクセス。

CFT

名前をつけて出力形式をカラムの中に記述する。HTMLタグなどが使え、カスタムフィールドは、[カスタムフィールド名]で指定する。

CFT2

投稿記事には、shortcodeで表示させたい出力フォーマットを指定する。


CSプレイヤーズでは、従来、カスタムフィールド値を表示させるのはテーマのコード書き換えで行っていたのであるが、このショートコードを組み合わせて表示させることに変更することにした。
フォーマットを数多く作り、各選手情報の投稿記事に必要なショートコードを列記する。

(実例)

CFT3

各選手毎にショートコードを記述する必要があるが、表示させるデータを組み換えることで、選手毎に必要なデータだけを表示させることもできる。


おあまけ

ちなみにショートコードはいくつかあり、下記のコードを使うと、カスタムフィールド値を直接出力できる。