2024年06月14日
WP関数:get_post_meta()
この関数の説明
WP関数の get_post_meta() は、投稿や固定ページの下段にあるカスタムフィールドのデータを取得する関数です。
関数
get_post_meta( $post_id, $key, $single )
パラメータ
$post_id (整数)(必須)
カスタムフィールド値を取得したい投稿のIDを指定します。
初期値: なし
$key(文字列)(必須)
取得したいカスタムフィールドの名称(キー)を指定します。
初期値: ''
$single (真偽値) (オプション)
false :カスタムフィールドの値を配列で返します。(デフォルト)
配列と言っても[0]に総てのデータが入るだけなのであまり意味がない。
true :カスタムフィールドの値を文字列で返します。※お勧め
戻り値
指定したカスタムフィールドのキーの値を返します。
事例
カスタムフィールドに下記のデータが登録されているとします。
①カスタムフィールドのデータを取得する。
<?php $price = get_post_meta(get_the_ID(),'price',true);// priceデータの取得 echo '$price='.$price.'<br>'; $size = get_post_meta(get_the_ID(),'size',true); // sizeデータの取得 $separator = '/[\s]+/'; $size_array = preg_split($separator, $size); // 配列に変換 ?> <pre> <?php print_r($size_array);?> </pre>
■2~3行目:priceデータを文字列で取得して表示しています。
■4行目:複数値を持つsizeデータを文字列として取得しています。
■5~6行目:空白(デリミタ)で分割して配列に変換しています。
■結果は下記の様になります。
$price=100
Array ( [0] => 80 [1] => 84 [2] => 86 )
関連情報
関連関数は カスタムフィールド関連関数 を参照してください
またカスタムフィールドを文書更新時にデフォルト設定を行いたい場合は アクションフック:save_post を参照してください。