シェアオフィス6F
貸会議室6F

こんにちは。コワーキングスペース7Fの星野邦敏です。

WordPressのテーマのカスタマイズ方法として、WP_Query関数を使って記事一覧を表示するケースがあると思います。

例えば、以下のような感じです。

<?php
$my_query = new WP_Query(array(
	'posts_per_page' => 10,
	'orderby' => 'date',
	'order' => 'DESC'
));
?>

しかしながら、この方法では、投稿の「この投稿を先頭に固定表示」を使い、その記事件数の最後の記事より古い日付の記事を、先頭に固定表示させてしまいますと、上記のコードでは10件の記事一覧になるはずが、11件・12件とはみ出してしまいます。

WordPressのWP_Query関数を使っていても「この投稿を先頭に固定表示」を使うと記事件数がはみ出してしまう問題を解決するコード

そこで、以下のようなソースコードを書くことで、この問題は解決することができます。

<?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サービスを自分で自由に開発することです。



メールマガジン登録

週1回程度でメールマガジンにて、コワーキングスペース7Fのイベントや勉強会情報や近況、Web関係や地域情報などを配信しています。
もし良ければ以下のフォームにメールアドレスを入力して登録してくださいね!

7F情報をぜひフォローください!


スポンサーリンク

月額会員募集中の申し込みフォーム
イベント情報
会議室ご予約
オープンスペースご予約
無料見学ご予約
お問い合わせ
メールマガジン登録フォーム
フロアマップ
よくある質問
Amazonコワーキングスペース7Fのほしい物リスト
一時託児施設利用
7F大学
リブライズ
Eightどこでもスキャン計画
7Fスタッフ募集のお知らせ
シェアオフィス6F
貸会議室6F

混雑状況やイベント情報

サイト内検索