WordPress カスタムフィールド(配列)を出力

この記事は5年前に書かれました。不適当な記述を含む場合がありますので、参考程度に留めてください。

カスタムフィールド Arrayで配列

[画像]
type = file
mediaLibrary = true
relation = true
blank = true

[商品名]
type = text
size = 80
blank = true

[商品説明文]
type = textarea
rows = 7
cols = 70
blank = true


<?php
global $wpdb;
$query = "SELECT meta_id,post_id,meta_key,meta_value FROM $wpdb->postmeta WHERE post_id = $post->ID ORDER BY meta_id ASC";
$cf = $wpdb->get_results($query, ARRAY_A);

$pics = array();
$item = array();
$desc = array();

foreach( $cf as $row ){
if( $row[‘meta_key’] == "画像" ){
array_push( $pics, $row[‘meta_value’] );
}
if( $row[‘meta_key’] == "商品名" ){
array_push( $item, $row[‘meta_value’] );
}
if( $row[‘meta_key’] == "商品説明文" ){
array_push( $desc, $row[‘meta_value’] );
}
}

$length = count( $pics );
//表示
for( $i = 0; $i < $length; $i ++ ){
echo ‘<h3>’ . $item[$i] . ‘</h3>’;
echo ‘<p>’ . wp_get_attachment_image( $pics[$i] ) . ‘<br />’;
echo $desc[$i] . ‘</p>’;
}
?>