添加 Woocommerce 默认产品排序

Add Woocommerce Default Product Sorting

我需要将默认排序更改为另一种排序。 我希望在我的 /shop/ 页面类别和标签页面上默认显示最后一个产品 modified.When 我编辑产品并更改产品内部的某些内容以移动到第一行。

有没有人可以帮我解决这个问题?

此致

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

或参考:这可以在管理面板中完成。但需要像上面提到的那样在 functions.php 中添加钩子。可在 woocomerce 管理面板中管理。 http://www.remicorson.com/woocommerce-sort-products-from-oldest-to-most-recent/

试试这个对我有用的选项。 这对我有用。可在 woocomerce 管理面板中管理。 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,然后您将看到添加的新选项。 Select 并点击保存。然后到localhost/wpppame/shop的前端,就可以看到页面的变化了。