ごめんなさい、codexのドラフト記事を元に書いてますので確認がとれていない回答です。また、時間の関係上検証をしていません。参考として試していただけると幸いです。
<?php
$custom_page = get_posts('include=3&post_type=page');
foreach($custom_page as $post) :
setup_postdata($post);
$cat = get_post_meta($post->ID, 'customfieldID', true);
if( $cat != "" ) {
echo '<span>' . $cat . '</span><br />';
}
endforeach;
?>
get_postsでID3のページのみ抽出して$postに代入しカスタムフィールドのデータを取得しています。このincludeやpost_typeの部分はcodexでラフドラフトとして記述されているので動くか分かりません。また、特定の記事が1つなのであればforeachもいらないかも。
customfieldIDはカスタムフィールドで指定しているIDを入れてください。
あくまでも参考として・・・;)
ありがとうございます。
うまくできました。
コードを載せておきます。
index.php(トップページ)
・特定の記事(ID1)の記事を表示
・特定のページ(ID154)のカスタムフィールド(top_photo)を表示
<?php
if (is_home()) query_posts('cat=1&showposts=1');
?>
<h2><a href="<?php the_permalink(); ?>" title="<?php the_title();?>"><?php the_title();?></a></h2>
<p>カテゴリー: <?php the_category(' , '); ?> | <?php the_time('Y年n月j日'); ?> <?php the_time(); ?></p>
<?php if(have_posts()) : while(have_posts()) : the_post(); ?>
<?php the_content(); ?>
<p><small><a href="<?php comments_link(); ?>"><?php comments_number(); ?></a> | タグ: <?php echo(get_the_tag_list('','、','')); ?></small></p>
<?php endwhile; else: ?>
<?php _e('記事がありません。'); ?>
<?php endif; ?>
<?php
$custom_page = get_posts('include=154&post_type=page');
foreach($custom_page as $post) :
setup_postdata($post);
$cat = get_post_meta($post->ID, 'top_photo', true);
if( $cat != "1" ) {
echo '' . $cat . '';
}
endforeach;
?>
foreachの部分取ると動きませんでした。やり方がまずいのかもしれないですが。
wordpressはこれからサイトぽい作りをする場合が多くなるのではないかなぁと思います。
shokun0803さんに感謝です。
大変助かりました。