投稿の際は下記の情報をお書き添えください。
-------------------------------------------
WordPress のバージョン:(例 6.0.2)
Welcart のバージョン:(例 2.8.1)
PHP のバージョン:(例 8.0)
Welcart専用の拡張プラグインとバージョン:(例 DL Seller 3.4.1、SKU Select 1.4.2)
ご利用の親テーマとバージョン :(例 Welcart Basic 1.7.1)
ご利用の子テーマとバージョン :(例 Welcart Beldad 1.4)
症状を確認したブラウザ:
サーバー【重要】:(会社名、サービス名)
--------------------------------------------

フォーラムへの返信

4件の投稿を表示中 - 1 - 4件目 (全4件中)
  • 投稿者
    投稿
  • gomanome
    参加者

    ご確認いただき、ありがとうございます。
    検討いたします。

    gomanome
    参加者

    ありがとうございました。

    
    get_post_meta($post->ID, '_itemShipping', true)
    

    で登録されている内容を取得することができました。

    返信先: 商品一覧ページでの商品の並び順変更 #69569
    gomanome
    参加者

    過去のフォーラムを参考にして、解決できたように思われます。
    参考にさせていただいたのは、こちらのトピックです。
    https://www.welcart.com/community/forums/topic/%E5%95%86%E5%93%81%E3%81%AE%E4%B8%A6%E3%81%B9%E6%9B%BF%E3%81%88#post-61624

    
    $query->set( 'orderby', 'title' );
    

    を指定してタイトル順に並んでいるように見えていたのは、
    「たまたま」商品の作成順が希望と同じだったからではないかと思われます。

    このコードで正しいのか自信はないのですが、とりあえず希望の実装になりました。

    
    function getcatorder( $query ) {
    	if ( is_admin() || ! $query->is_main_query() )
    		return;
    
    	if ( $query->is_category() ) {
    		$query->set( 'posts_per_page', '-1' );
    		$query->set( 'orderby', 'meta_value' );
    		$query->set( 'meta_key', '_itemCode' );
    		$query->set( 'order', 'ASC' );
    		return;
    	}
    }
    add_action( 'pre_get_posts', 'getcatorder' );
    

    ありがとうございました。

    返信先: 商品一覧ページでの商品の並び順変更 #69562
    gomanome
    参加者

    ご返信いただき、ありがとうございます。
    説明が不十分ですみません。「title」を指定した場合の並び順は、
    「商品名」順になると思うのですが、「商品コード」順で並べたいのです。

    どちらにしても、現在、上記の指定部分を title と指定しても、
    「商品名」順には並ばす、よくわからない順番で並んでしまいます。
    取得件数は反映しますのでフックはかかっていると思います。

    「商品コード」はカスタムフィールドなので別の書き方になるのでしょうか?

4件の投稿を表示中 - 1 - 4件目 (全4件中)