サポート » 使い方全般 » カスタム投稿タイプのアーカイブで『順序』並べ替えしたい

  • お世話になります。

    カスタム投稿タイプの一覧表示で『順序』に入力した数値の昇順に並べ替えがしたいです。

    いろいろ調べてみて以下のコードを使ってみたけどだめでした。
    どうすればいいのでしょうか?

    よろしくお願いいたします

    function custom_post_archive_orderby_menu_order( $wp_query ) {
        if ( $wp_query->is_post_type_archive() && post_type_supports( $wp_query->query_vars['post_type'], 'page-attributes' ) ) {
            if ( ! isset( $wp_query->query_vars['orderby'] ) ) {
                $wp_query->query_vars['orderby'] = 'menu_order';
            }
                if ( ! isset( $wp_query->query_vars['order'] ) ) {
                $wp_query->query_vars['order'] = 'ASC';
            }
        }
    }
    add_action( 'pre_get_posts', 'custom_post_archive_orderby_menu_order' );
7件の返信を表示中 - 1 - 7件目 (全7件中)
  • こんにちは

    並び替えできないのは、管理画面の一覧、アーカイブ ページの一覧、または両方でしょうか?

    トピック投稿者 o7tubg

    (@o7tubg)

    返信ありがとうございます

    管理画面は問題なくできています
    アーカイブページの一覧の並べ替えがうまくできません

    人気順等に並び替えをするようなプラグインをインストールしていたり、テーマ側で既に並び替えしていませんか?
    プラグインおよびテーマの設定を確認してください。

    あと、下記のコードではどうでしょうか?
    コード内の ‘foobar’ は、実際のカスタム投稿タイプを記述してください。

    function my_archive_order( $query ) {
    	if ( !is_admin() && $query->is_main_query() ) {
    		// 順序をサポートする全てのアーカイブ
    		//if ( $query->is_post_type_archive() && post_type_supports( $query-> query_vars['post_type'], 'page-attributes' ) ) {
    		// 特定のカスタム投稿のアーカイブ
    		if ( $query->is_post_type_archive( 'foobar' ) ) {
    			$query->set( 'orderby', 'menu_order' );
    			$query->set( 'order', 'ASC' );
    		}
    	}
    }
    add_action( 'pre_get_posts', 'my_archive_order' );
    トピック投稿者 o7tubg

    (@o7tubg)

    今回教えていただいたコードでも並び替えできませんでした

    プラグインは
    Editor TemplatesとWP Multibyte Patchしか使ってないので問題ないと思います。

    テーマ側での並び替えは設定、今試しているもの以外していません

    twentysixteen テーマにて、o7tubg さんの提示されたコードおよび私の提示したコード共にちゃんと動作しますね。

    テーマは何でしょうか?

    トピック投稿者 o7tubg

    (@o7tubg)

    『WordPressの教科書2』のテーマをベースにカスタマイズをかけたものです

    とりあえず、デフォルトのテーマ(twentyseventeen 等)で動作確認してみてください。
    デフォルトのテーマで動作するとなるとテーマ側の問題になるとおもいます。
    その場合、『WordPressの教科書2』テーマは書籍による販売(有償)のテーマのようなので、テーマのコードを確認することができないため、このフォーラムでのサポートは難しいでしょう。
    テーマ開発元へお問い合わせしてみるのがいいのではないでしょうか。

7件の返信を表示中 - 1 - 7件目 (全7件中)
  • トピック「カスタム投稿タイプのアーカイブで『順序』並べ替えしたい」には新たに返信することはできません。