例として
サイトのお知らせ用にカスタム投稿タイプ「news」を作成し、カテゴリとしてカスタムタクソノミー「news_cat」を作成する事とします。
news_catは以下を追加する想定です。
- お知らせ(スラッグ:info)
- イベント(スラッグ:event)
- 宣伝(スラッグ:ad)
これをWordpress標準機能で文字検索させsearch.phpで結果一覧を出力させる順番を
カテゴリごとに出力させたいです。
また、カテゴリごとの一覧は日付が新しいものから表示したいです。
なお、カテゴリ(お知らせ、イベント、宣伝)の順番も
1:お知らせ
2:イベント
3:宣伝
というように指定したいです。
◆表示したい一覧の順番
カテゴリ-お知らせの記事
[カテゴリ-お知らせの記事]
[カテゴリ-お知らせの記事]
カテゴリ-お知らせの記事
カテゴリ-イベントの記事
[カテゴリ-イベントの記事]
[カテゴリ-イベントの記事]
カテゴリ-イベントの記事
カテゴリ-宣伝の記事
[カテゴリ-宣伝の記事]
[カテゴリ-宣伝の記事]
カテゴリ-宣伝の記事
上記のような事をpre_get_postsをadd_actionさせ、実装することは可能なのでしょうか
以下現状のコードなのですが
「Category Order and Taxonomy Terms Order」というpluginにてタクソノミーの順番を指定しているのですが、おそらくこの順番はタクソノミー一覧など出力の場合で、今回のような場合は関係ないかと思うのですが、、meta_queryなどを絡めて実装するようなお話しのような気もするのですが
今回の「タクソノミーごと」という部分でどうにも見当もつかずハマっております;
php
1add_action( 'pre_get_posts', 'custom_pre_get_posts' ); 2function custom_pre_get_posts( $obj ) { 3 if ( is_admin() || !$obj->is_main_query() ){ 4 return; 5 } 6 $obj->set('orderby', array('term_order'=>'ASC', 'date'=>'DESC')); 7 8//$obj->set('meta_query', array( 9// 10//)); 11}
どうかご教示頂けますと幸いです。
宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー