カスタムフィールド
メタデータ格納
投稿記事に付加的な情報を付け加えるカスタムフィールド。WordPressには標準装備されています。 商品カタログデータの格納だけでなく、隠しデータとしての利用も可能です。
カスタムフィールドとは
カスタムフィールドとは、投稿記事に、任意のメタデータを追加する機能のことです。 「キー」と「値」を持つ連想配列を記事に追加します。 例えば、「今日の音楽」というキーを追加し、「Some Skunk Funk」を値にすることができます。別の記事では、「今日の音楽」「Novo Lugar」にすることができます。 便利な利用方法は、後半で紹介します。
カスタムフィールドの作り方
管理画面で新規記事投稿パネルの下のほうに、カスタムフィールドという欄が用意されています。 「キー」と「値」を書き込んで、「追加」をクリックすると、カスタムフィールドに追加されます。
1つのキーに、複数の値を割り当てることができます。 この場合は、キーと値の組を作成した後、新しい行で同じキーを選択し、値を入力してください。 すなわち、まずカスタムフィールド追加で、「演奏家」というキーを作り、値を「Randy Brecker」にして作成、次に「演奏家」キーを選択し、「Michael Brecker」と入力します。
表示させる
カスタムフィールドの中身を表示させるには、テンプレートの適当な箇所で、以下のように記述します。 このスクリプトは、キーと値を順不同リスト(<ul>)で返します。
the_meta();
出力は、以下のようになります。
<ul class='post-meta'> <li><span class='post-meta-key'>今日の音楽</span>Some Skunk Funk</li> <li><span class='post-meta-key'>演奏家</span>Randy Brecker, Michael Brecker</li> </ul>
出力形式を変えたい場合は、以下の関数を利用してください。 これらの関数は配列を返すだけです。 対応する値が1つの場合も、返り値は配列です。
get_post_custom();キー値の配列を返す get_post_custom_keys();キーの配列を返す get_post_custom_values($key);指定したキーに対応する値の配列を返す
特定記事の特定キーの値を取り出す関数として、get_post_metaも用意されています。
get_post_meta($post_id,$key,TRUE/FALSE);
第一引数は記事IDです。第二引数はキーの名称です。 第三引数は、返り値の形式を指定します。TRUEに設定すると文字列(最初の値のみ)を返します。FALSEに設定すると配列を返します。デフォルト値はFALSEです。
カスタムフィールドの使い方
カスタムフィールドは、ショッピングサイト運営等で、価格や大きさ等のカタログ情報を掲載するというのが最も基本的な使い方でしょう。 この他にも、表に出さないでソートや検索にのみ用いるデータ(例えば人気度や在庫数等)を格納することができます。
一歩進んだ使い方としては、特定のプラグインに送るデータを、カスタムフィールドの値にいれておく、という方法があります。 カスタムフィールドの値は、プラグインやテンプレート等で利用できるため、ASIN(オンラインショッピングサイトアマゾンジャパンの商品コード)を入れてアマゾンアソシエイトリンク生成プラグインに受け渡す、等といったことができます。