WordPress:特定カテゴリで投稿を古い順に表示させる方法

WordPressの投稿の表示は、デフォルトでは新しいものから表示されますよね。でも特定カテゴリーでは反対(投稿した順番)で表示したい場合がありますよね。そう言う場合の記述方法の一例です。

記述方法

場所は何も設定してなければ、
URL/wp-content/themes/内の、使用しているテーマのフォルダ内にある、
function.php
に以下のように記述します。

<?php
function my_pre_get_posts($query) {
    if (is_category(array('abc','def'))) {
        $query->set('order', 'ASC');
    }
}
add_action('pre_get_posts', 'my_pre_get_posts');
?>

カテゴリー名が”abc”一つの場合:is_category(‘abc’)
カテゴリー名が2個以上ある場合:is_category(array(‘abc’,’abcdef’)))

表示順を先に投稿したものから表示したい(小さい順)にしたい場合:
$query->set(‘order’, ‘ASC’);
表示順をランダムにしたい時:
$query->set(‘orderby’, ‘rand’);

これで指定カテゴリの投稿が新しいものからでなく、古いもの、またランダムに表示されるようになります。

phpについてはあまり詳しくないので、一例として。
間違えていたらすいませんが、とりあえず現在、3つのサイトで正常に動作できてます。

Google AdS



関連記事

WPでin_categoryが効かない!サイドバーが出てこない!原因と対処(解決)方法


管理しているサイトでカテゴリー単位で色々「in_category」で分岐してサイドバーの出し分けをしていたのですが、ある…

記事を読む▷


【2025年版】『reCAPTCHA v3』をWordPressのサイト&Contact Form7で表示させる方法

【2025年版】『reCAPTCHA v3』をWordPressのサイト&Contact Form7で表示させる方法


今までをWordPress(ワードプレス)で作ったサイトの「問い合わせページ」をContact Form7で作成し、『r…

記事を読む▷


右下のreCAPTCHA

『reCAPTCHA v3』を2ページ以上表示させる時の方法(問い合わせ+α・固定ページ・投稿ページetc..)


以前『reCAPTCHA v3』を問い合わせページのみ&左側に表示させる方法:その2を書いた時は、問い合わせページにのみ…

記事を読む▷


RSSフィードを設置してすぐにエラーが…


恥ずかしながら、RSSフィードを管理している全てのサイトに設置していませんでした。やろうやろう。とは思ってたのですが、ど…

記事を読む▷


Google AdSenseの広告をWordPressの投稿内に記述する方法


以前Google AdSenseの広告を自動で設定してたのですが、ある時スマホで管理サイトを見た時、やたら記事を読むのを…

記事を読む▷


Message

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

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください