WordPress個別サポート
スポンサーリンク

WordPressテーマ「LOTUS (TCD039)」

投稿を古い順に表示する

カテゴリページなどで表示される投稿は新しい順に一覧表示されますが、何らかの手順をまとめたカテゴリなど、古い順に時系列で表示したいカテゴリもあります。次の例では、投稿がステップ(3)からステップ(1)へと表示されますが、手順を追いかけるページなので逆にした方が読みやすいかもしれません。

投稿は新しい順に表示される

投稿は新しい順に表示される

その場合、テーマのfunctions.phpに次のように記述します。

function my_pre_get_posts($query) {
    if (is_category('app')) {
        $query->set('order', 'ASC');
    }
}
add_action('pre_get_posts', 'my_pre_get_posts');

ここでは、「app」というスラッグのカテゴリページで投稿を古い順番に表示しています。使われている命令を簡単に紹介します。

  • is_category('app') → もしもappカテゴリならば
  • $query->set('order', 'ASC'); → 表示順(order)を昇順(ASC:ascending order:小さい順のこと)に

これにより、指定カテゴリの投稿が古い順に表示されるようになります。

指定カテゴリのみ古い順に表示される

指定カテゴリのみ古い順に表示される

投稿をランダム順に表示する

クイズのページなど、一覧表示するときに表示順をシャッフルしてランダムな順番で表示したい場合、「$query->set('orderby', 'rand');」と指定します。

function my_pre_get_posts($query) {
    if (is_category('yomenai')) {
        $query->set('orderby', 'rand');
    }
}
add_action('pre_get_posts', 'my_pre_get_posts');

これにより、カテゴリページで投稿がランダム順に表示されるようになります。

漢字クイズがランダム順に表示される

漢字クイズがランダム順に表示される

この記事をSNSで共有する
WordPressでお困りのときはご相談を
この記事を書いた西沢直木が直接、WordPress個別サポートで対応します。
こんなときはご相談を
  • WordPressの使い方(ページやメニューの作り方を教えてほしい)
  • カスタマイズ(機能の追加やデザイン調整をお願いしたい)
  • トラブル対応(画面真っ白・「ログインできない」を解決したい)
マンツーマンなので相談内容は自由です。いただいた課題をその場で解決、CSSやPHPも目の前で修正します。気軽にご相談ください。
WordPress講座の問い合わせ先

関連記事

BizVektorのカスタマイズ

WordPressによるサイト作成のヒント

WordPressプラグイン

スポンサーリンク
西沢直木によるWordPress講座の紹介
ホームページ作成講座WordPress個別サポート