2016-09-17 21 views
0

デフォルトのソートを別のソートに変更する必要があります。 私は/ shop/pageカテゴリに入りたいと思いますし、タグはデフォルトで最後に変更された製品を表示します。私は製品を編集して製品の中の何かを最初の行に移動します。Woocommerceのデフォルト商品ソートの追加

これで私を助けることができる人はいますか?

よろしく

答えて

0

WooCommerce - 変更デフォルトのカタログのソート順。同様にショップページなどのフックでも同様です。

 
    /** 
    * This code should be added to functions.php of your theme 
    **/ 
    add_filter('woocommerce_default_catalog_orderby', 'custom_default_catalog_orderby'); 

    function custom_default_catalog_orderby() { 
     return 'post_modified'; // Can also use title and price 
    } 

[or] 
    add_filter('woocommerce_get_catalog_ordering_args', 'am_woocommerce_catalog_orderby'); 
    function am_woocommerce_catalog_orderby($args) { 
     $args['orderby'] = 'last_modified'; 
     $args['order'] = 'desc'; 
     return $args; 
    } 

参考:https://gist.github.com/mikejolley/1622323

またはREF:これは管理パネルでそれを行うことができます。 functions.phpのフックを上のmentioendとして追加する必要があります。ウーコマーシー管理パネルで管理可能。 http://www.remicorson.com/woocommerce-sort-products-from-oldest-to-most-recent/

このオプションを試してみるとうまくいきます。 これは私のために働いた。ウーコマーシー管理パネルで管理可能。 http://www.remicorson.com/woocommerce-sort-products-from-oldest-to-most-recent/。現在のテーマ(functions.php)ファイルに以下を追加してください。

 
    // Filters 
    add_filter('woocommerce_get_catalog_ordering_args',  'custom_woocommerce_get_catalog_ordering_args'); 
    add_filter('woocommerce_default_catalog_orderby_options', 'custom_woocommerce_catalog_orderby'); 
    add_filter('woocommerce_catalog_orderby', 'custom_woocommerce_catalog_orderby'); 

    // Apply custom args to main query 
    function custom_woocommerce_get_catalog_ordering_args($args) { 
     $orderby_value = isset($_GET['orderby']) ? woocommerce_clean( $_GET['orderby']) : apply_filters('woocommerce_default_catalog_orderby', get_option('woocommerce_default_catalog_orderby')); 

     if ('oldest_to_recent' == $orderby_value) { 
      $args['orderby'] = 'post_modified'; 
      $args['order'] = 'DESC'; 
     } 

     return $args; 
    } 

    /* Create new sorting method */ 
    function custom_woocommerce_catalog_orderby($sortby) {  
     $sortby['oldest_to_recent'] = 
     __('Based on Last modified to be displayed recent', 'woocommerce'); 
     return $sortby; 
    } 

管理パネルhttp://localhost/wpppame/wp-admin/admin.php?page=wc-settings&tab=products&section=displayに移動し、新しいオプションが追加されます。それを選択して[保存]をクリックします。次に、localhost/wpppame/shopのフロントエンドに行くと、ページの変更を見ることができます。

+0

あなたは天才です。本当にありがとうございます。私はそれを感謝します。 –

+0

ようこそ@maldboyscatman :) – Senthil

関連する問題