カスタムフィールドの値を使っての表示とか条件分岐とか

電脳備忘録

カスタムフィールドの値の表示とか、値を使った分岐の備忘録

カスタムフィールドの値を表示するには下記のように書けばいいみたい。

<?php echo get_post_meta($post->ID , 'fieldname' ,true); ?>

画像を表示するときはこんな感じ

<?php
$imagefield = get_imagefield('fieldname');
$thum = wp_get_attachment_image_src($imagefield['id'],'full');
?>

トップページにカスタムフィールドのチェックボックスにチェックが入っている記事のみを表示させたかったので、loop.phpにこんな感じで条件分岐を書いてみました。

<?php while ( have_posts() ) : the_post(); ?>
<?php /* How to display posts of the Gallery format. The gallery category is the old way. */ ?>
<?php
//チェックが入っているエントリーを表示されるための処理
global $post;
$custom = get_post_custom($post->ID);
if(!empty($custom)) {
$display_select = $custom["display_check"][0];
echo $display_select;
}
?>
<?php //セレクトボックスの値が'表示'の記事のみ表示 ?>
<?php if($display_select == 'true') : ?>
<?php endif; // This was the if statement that broke the loop into three parts based on categories. ?>
<?php endif; //チェックが入っているエントリーを表示されるための処理 ?>
<?php endwhile; // End the loop. Whew. ?>

カスタムフィールドの値をもとに表示する画像を切り替えるには下記のように書けばいいみたい。
この場合だと、カスタムフィールド「fieldname」の値が「ケース1」だったら「photo001.jpg」を、「ケース2」だったら「photo002.jpg」を表示します。

<?php
$fruits = (array)post_custom('fieldname');
foreach ($fruits as $fieldname) {
switch ($fieldname) {
case 'ケース1':
echo "画像1\n";
break;
case 'ケース2':
echo "画像2\n";
break;
case 'ケース3':
echo "画像3\n";
break;
}
}
?>

広告

ブログの維持費に充てるでございます・・・。