こんにちは。コワーキングスペース7Fの星野邦敏です。
WordPressのテーマのカスタマイズ方法として、WP_Query関数を使って記事一覧を表示するケースがあると思います。
例えば、以下のような感じです。
<?php $my_query = new WP_Query(array( 'posts_per_page' => 10, 'orderby' => 'date', 'order' => 'DESC' )); ?>
しかしながら、この方法では、投稿の「この投稿を先頭に固定表示」を使い、その記事件数の最後の記事より古い日付の記事を、先頭に固定表示させてしまいますと、上記のコードでは10件の記事一覧になるはずが、11件・12件とはみ出してしまいます。
そこで、以下のようなソースコードを書くことで、この問題は解決することができます。
<?php $list_cnt = 10; $sticky = get_option('sticky_posts'); if ( !empty($sticky) ) $list_cnt -= count($sticky); $my_query = new WP_Query(array( 'posts_per_page' => $list_cnt, 'orderby' => 'date', 'order' => 'DESC' )); ?>
私は個人的には、投稿の「この投稿を先頭に固定表示」を使わないので、運用でカバーする方向が多かったのですが、汎用化する必要がある場合などは、上記のように、一旦変数に入れて記事表示件数を操作する必要がありますね。
WordPressテーマ制作者の人でもしこの問題に直面した人がいましたら、ぜひご参考ください。
スポンサーリンクコワーキングスペース7Fの運営代表者です。7Fの運営会社である株式会社コミュニティコムの代表取締役でもあります。2012年12月1日に7Fがオープンしてから2014年4月末まで店長も兼ねていましたので、外出予定が無い日は基本毎日いましたが、現在は店長を任せ、オーナー兼利用者となりました。今はもともとの本業のITの仕事と、コワーキングスペースに絡んだ創業支援や地域おこしの仕事が中心です。下のフロアを増床することになり、シェアオフィス6Fと貸会議室6Fの運営もしています。趣味は自分の思い付いたWebサービスを自分で自由に開発することです。
2012-2022 © コワーキングスペース7F All Rights Reserved.
運営会社 株式会社コミュニティコム