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

電脳備忘録

本記事のソースコードの利用によって生じた損害について、当方は一切の責任を負いません。ご自身の判断と責任のもとで参照・ご利用ください。

この記事は最終更新から3年以上経過しています。

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

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

<?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;
    }
  }
  ?>
0%