「先頭に固定表示」が効かない!!??

自作のWordpressテーマで「先頭に固定表示」が効かなくて、ちょっと慌てたお話です。
自作のトップページに最新の投稿を5件くらい表示させたりするじゃないですか。そこに、先頭固定表示されなくて…。
でも、index.phpとかにはちゃんと表示されるんですよ。

原因は「get_posts()」

「get_posts()」を使うと「先頭に固定表示」が無効になるらしいです。
WP_query()」にするだけですぐに直りました。
投稿の一覧系取得には「get_posts()」を使ってきてたんですが、こんな落とし穴があったとは…。
これからは「WP_query」の方を使う方が無難かなぁと思っています。

「WP_query()」を使う書き方

$arg = array(
 'posts_per_page' => 5 //表示記事件数(-1で全件表示)
 'category' => 10, //カテゴリーIDが10の記事にしぼりこみたいとき
 'orderby' => 'date', //並び順
 'order' => 'DESC' //降順(日付の新しい順)
);
$query = new WP_Query($arg);

これで$postsの中に条件が満たされた記事が取得されました。
「get_posts()」と同じです。

<?php if($query->have_posts()):
 while($query->have_posts()):$query->the_post();?>
  ここにループ内容
 <?php endwhile;
else:?>
 記事がないとき
<?php endif;?>

ある意味、index.phpに似てるので、やはりこちらを使う方がいいような気がしてきました。