カスタム投稿タイプ「movie」からカスタムフィールド「comment」の値を取得して列挙する場合。query_postsを使うと
<?php query_posts( array('post_type' => 'movie') ); ?> <?php while ( have_posts() ) : the_post(); ?> <?php $value = post_custom('comment'); ?> <div class="comment"> <?php echo $value; ?> </div> <?php endwhile; ?>
これが最低限の記述。(だと思う・・・)
メインループとは別な場所(例えばサイドバーなど)に、カスタム投稿タイプ「news」からタイトルとカスタムフィールド「genre」を列挙する場合。こちらはget_postsを使うと便利。(「genre」ならカスタムタクソノミーを使えとかいうツッコミはナシでお願いします。)
<?php $post_list = get_posts( array('post_type' => 'news') ); ?> <?php foreach ( $post_list as $line ) : setup_postdata($line); ?> <div class="news"> <?php the_title(); ?> <span class="genre"> <?php echo get_post_meta($line->ID,'genre',true); ?> </span> </div> <?php endforeach; ?>
ちなみに「setup_postdata」は、query_postsの「the_post()」とほぼ同じもの。これを使えば、「the_title()」とか「the_content()」とかが使えるようになる。