投稿の「この投稿を先頭に固定表示」を使ってみた

スクリーンショット 2016-02-11 22.18.09

そういえばこんな機能あったな、と思って使ってみた。
特別設定が必要なわけじゃないのかなー、という感じです。

スクリーンショット 2016-02-11 22.25.23

上記は投稿一覧のページです。特に設定した覚えはないんですが、投稿の一覧のページでは先頭に表示されていました(右サイドのRecentが本来の投稿順の記事の並びです)。メインクエリだと特に何も設定しなくても使えるのかなあ、という感じです。
先頭に固定した記事が複数あるとどうなんかな。

ですが、フロントページで、get_posts()とかで記事を呼び出すときとかは、先頭に固定したからといってそれが反映されるわけではないです。

なんかもうちょっといい方法があるような気がしますが、とりあえず、最初に「先頭固定表示の記事のみ」を表示して、そのあとに「先頭に固定表示の記事以外」の記事を呼び出している、という感じにしました。

		<ul class="front-news-list">
<?php
$sticked_posts = get_posts( array( 'post__in' => get_option( 'sticky_posts' ), 'posts_per_page' => -1 , 'post_type'=> 'post') );
foreach ( $sticked_posts as $post ) : setup_postdata( $post ); ?>
		<li class="list-item sticked-item"><time class="date"><?php the_time('Y-m-d');?></time><a href="<?php the_permalink();?>"><?php the_title(); ?></a></li>
<?php endforeach; wp_reset_postdata();?>
<?php
$args = array( 'post__not_in' => get_option( 'sticky_posts' ), 'posts_per_page' => 5 , 'post_type'=> 'post') ;
$myposts = get_posts( $args );
foreach ( $myposts as $post ) : setup_postdata( $post ); ?>
		<li class="list-item"><time class="date"><?php the_time('Y-m-d');?></time><a href="<?php the_permalink();?>"><?php the_title(); ?></a></li>
<?php endforeach; wp_reset_postdata();?>
		</ul>

実際の表示は下記の感じです。

スクリーンショット 2016-02-11 22.37.33

参考になればと〜。

コメントをどうぞ

メールアドレスが公開されることはありません。 が付いている欄は必須項目です