製品は、非特殊製品の機能を備えた製品のyes
とno
として設定されている_featured
などのカスタムフィールドを持ちます。だからあなたは を使用することができますwoocommerce_shortcode_products_query
フィルターを上書きする WooCOmmerceショートコード。
add_filter('woocommerce_shortcode_products_query', 'wh_woocommerce_shortcode_products_orderby');
function wh_woocommerce_shortcode_products_orderby($args)
{
$standard_array = ['menu_order', 'title', 'date', 'rand', 'id'];
// print_r($args['orderby']);
if (isset($args['orderby']) && !in_array($args['orderby'], $standard_array))
{
$args['meta_key'] = '_featured';
$args['orderby'] = 'meta_value_num';
}
// print_r($args);
return $args;
}
コードは、あなたのアクティブな子テーマ(またはテーマ)のfunction.phpファイルになります。また、任意のプラグインのPHPファイルにもあります。
非装備(no
にすなわち、フォームyes
)に特色製品形態を一覧表示するにはUSAGE
[product_category category="products" orderby="_featured" order="DESC"]
は注意して下さい::上記のコードが動作しているようだが、あなたは印刷する場合$args['orderby']
_featured
のキーが表示されないので、ハードコードされています。それは$args
です。これは標準的な方法ではありません。
希望すると便利です。
ショートコードが必要な場合や、 'WP_Query'でもやりますか? –
私はショートコードが好きです。 – Cowboy