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



関連記事

画像やテキストを中央(上下左右真ん中)に配置する方法


普通にtext-align:center;や、margin:0 auto;等でテキストや写真を真ん中に配置したつもりでも…

記事を読む▷


Thumbnail_Icon_firefox_bug

Firefoxでなぜか消える、Tableのborder対策、cssのみでの解決法


Firefoxでなぜか消えてしまうTableのborder、いつもじゃなく、たまになのでこれがやっかい。。原因がわからな…

記事を読む▷


WordPressのメニューを、footer等用に作成して追加する方法


WorPressのデフォルトでは、gnavi(グローバルナビ)にメニューを追加し、表示させることはできますが、foote…

記事を読む▷


URLwwwありなし

URLの正規化:wwwあり、なしのドメインを統一する記述方法(エックスサーバー(XSERVER) にて)


前回のブログ で.htaccessに301リダイレクトをするための記述方法について書きましたが、ついでにwwwあり、なし…

記事を読む▷


テキストボックスの値を別のテキストボックスへ反映させる方法『Contact Form 7』にて


問い合わせページだけでなく、最近は契約書ページも『Contact Form 7』で作成して使ってるのですが、ペーパーレス…

記事を読む▷


Message

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

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