web関連

【WordPress】記事の出力方法まとめ

【WordPress】記事の出力方法まとめ

ちょいちょい書き方忘れるので備忘録

メインループ

<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
// 出力するもの
<?php endwhile; endif; ?>
<?php wp_reset_query(); ?>

サブループ:WP_Query()

<?php
	$args = array(
	    'post_type' => 'post',
	);
?>
<?php 
$the_query = new WP_Query( $args );
if ( $the_query->have_posts() ) :
  while ( $the_query->have_posts() ) : $the_query->the_post();
?>
// 出力するもの
<?php endwhile; endif; ?>
<?php wp_reset_postdata(); ?>

サブループ:get_posts()

<?php
	$args = array(
	    'post_type' => 'post',
	);
?>
<?php
$my_posts = get_posts( $args );
if ( $my_posts ) : global $post;
foreach($my_posts as $post) : setup_postdata($post);
?>
// 出力するもの
<?php endforeach; endif; ?>
<?php wp_reset_postdata(); ?>
// ↑の短縮版
<?php foreach( get_posts( $args ) as $post ) : setup_postdata( $post ); ?>
// 出力するもの
<?php endforeach; wp_reset_postdata(); ?>
「’post_type’ => ‘post’」は初期値だから省略できる。
「get_posts()」ってあんまり使ったことないから後で調べる。