特定のアーカイブページだけ並び順を変える

functions.php内で、どのアーカイブページにどういうクエリを渡すか指定する方法。
今回やりたかったのは、カスタム投稿「profile」で名前の読み仮名のカスタムフィールド「yomi」を作成したので
それをもとに50音順でならべるというやつ。

//function my_archive_order($query) {
//if( !is_admin() && $query->is_main_query() ){
// if($query->is_post_type_archive(‘profile’)){ //カスタム投稿タイプ「profile」のアーカイブページのとき
//$query->set(‘orderby’, ‘meta_value’); //並び順はカスタムフィールドを参照
//$query->set(‘meta_key’, ‘yomi’); //カスタムフィールド「yomi」を参照
//$query->set(‘order’, ‘ASC’); //昇順で並べる
//}
//}
//}
//add_action(‘pre_get_posts’, ‘my_archive_order’);

これでできました!wp_queryとかに渡してる条件をここで入れればいいだけなんですね。
すっきりすっきり^^

フォーラムのこの質問の回答からいただきました、ありがとうございます。
カスタム投稿タイプのアーカイブで『順序』並べ替えしたい

コメントを残す

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

top