wordpress3.5について教えてください。

現在、以下のように記述して投稿ページを新着順にトップページ内に表示させておりますが、これを投稿ページではなく固定ページを反映させる方法はないでしょうか?
<table>
<tr>
<?php query_posts('showposts=5'); ?>
<?php while (have_posts()) : the_post(); ?>
<th><?php the_time('Y.m.d') ?><br /><span><?php the_category(',') ?></span></th>
<td><?php echo wp_get_attachment_image(get_post_meta($post->ID,'Outward',true),array(50,50)); ?></td>
<td><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php _e('Permanent link to'); ?> <?php the_title(); ?>"><span class="strong"><?php the_title(); ?></span><br /><?php echo post_custom("Address")?></a></td>
</tr>

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2013/01/12 18:14:14
  • 終了:2013/01/17 23:49:20

ベストアンサー

id:rouge_2008 No.1

rouge_2008回答回数594ベストアンサー獲得回数3512013/01/12 21:23:18

ポイント100pt

「post_type」に「page」を指定する事で、固定ページを取得・表示できます。

<table>
<?php query_posts('post_type=page&showposts=5'); /* query_posts('showposts=5'); */ ?>
<?php if ( have_posts() ) while (have_posts()) : the_post(); ?>
<tr>
<th><?php the_time('Y.m.d') ?><br /><span><?php the_category(',') ?></span></th>
<td><?php echo wp_get_attachment_image(get_post_meta($post->ID,'Outward',true),array(50,50)); ?></td>
<td><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php _e('Permanent link to'); ?> <?php the_title(); ?>"><span class="strong"><?php the_title(); ?></span><br /><?php echo post_custom("Address")?></a></td>
</tr>
<?php endwhile; wp_reset_query(); ?>
</table>


http://wpdocs.sourceforge.jp/%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%E3%82%BF%E3%82%B0/query_posts#.E6.8A.95.E7.A8.BF.E3.83.BB.E5.9B.BA.E5.AE.9A.E3.83.9A.E3.83.BC.E3.82.B8.E5.BC.95.E6.95.B0
 
※「wp_reset_query()」で変更したメインクエリを元に戻すのを忘れないようにしてください。

※メインクエリを書き換えるのではなく、get_posts()またはWP_Queryでループを別個に作成して表示する事も可能です。)

<table>
<?php $pages_query = new WP_Query('post_type=page&posts_per_page=5'); ?>
<?php if ( $pages_query->have_posts() ) while ($pages_query->have_posts()) : $pages_query->the_post(); ?>
<tr>
<th><?php the_time('Y.m.d') ?><br /><span><?php the_category(',') ?></span></th>
<td><?php echo wp_get_attachment_image(get_post_meta($post->ID,'Outward',true),array(50,50)); ?></td>
<td><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php _e('Permanent link to'); ?> <?php the_title(); ?>"><span class="strong"><?php the_title(); ?></span><br /><?php echo post_custom("Address")?></a></td>
</tr>
<?php endwhile; wp_reset_postdata(); ?>
</table>


http://wpdocs.sourceforge.jp/%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%E3%82%BF%E3%82%B0/get_posts
http://wpdocs.sourceforge.jp/関数リファレンス/WP_Query


【追記】

ネットワークでのブログの切り替えは「switch_to_blog()」で可能です。

<table>
<?php switch_to_blog(切り替え先サイトのID); query_posts('post_type=page&showposts=5'); ?>

...(略)

<?php endwhile; wp_reset_query(); restore_current_blog(); ?>
</table>

※利用し終わった後は、「restore_current_blog()」で元のブログに戻します。

http://codex.wordpress.org/WPMU_Functions/switch_to_blog
http://codex.wordpress.org/Function_Reference/restore_current_blog

他1件のコメントを見る
id:kaji0245

ありがとうございます、おかげさまで固定ページを抽出して新着情報ブロックを実現できそうです。
ちなみにマルチサイトで作成している場合に、この新着ブロックは子サイトのトップページではOKですが、親サイトのトップページで表示させるにはいかがでしょうか?

PS:「Contact Form 7 Dynamic Text Extension」はまだうまくいきませんが、動的項目をあきらめて静的項目(固定メルアド)にしようかと思っております。

2013/01/13 01:20:01
id:rouge_2008

ネットワークでのサイトの切り替え方法を追記しました。
親サイトのテンプレートに「switch_to_blog(子サイトのID)」を追加するといいです。
以降「restore_current_blog()」で戻すまでは、切り替え先のサイトに対する操作になります。

2013/01/13 22:59:32

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません