我一直在尝试在 woocommerce 中定制相关产品。我已经使用 woocommerce_output_lated_products_args 添加 meta_query 选项,但它们没有效果,这是我的代码:
add_filter( 'woocommerce_output_related_products_args',
'custom_related_products_args' );
function custom_related_products_args( $args ) {
$args['posts_per_page'] = 4;
$args['columns'] = 4;
$args['meta_query'] = array(
array(
'key' => 'public_catalog',
'value' => true
),
);
return $args;}
Run Code Online (Sandbox Code Playgroud)
更改相关产品查询的正确过滤器挂钩是woocommerce_product_related_posts_query\xe2\x80\xa6 要设置后元查询,您将使用以下内容(请参阅末尾的注释):
add_filter( \'woocommerce_product_related_posts_query\', \'alter_product_related_posts_query\', 10, 3 );\nfunction alter_product_related_posts_query( $query, $product_id, $args ){\n global $wpdb;\n\n $query[\'join\'] .= " INNER JOIN {$wpdb->postmeta} as pm ON p.ID = pm.post_id ";\n $query[\'where\'] .= " AND pm.meta_key = \'public_catalog\' AND meta_value LIKE \'1\' ";\n\n return $query;\n}\nRun Code Online (Sandbox Code Playgroud)\n\n代码位于活动子主题(或活动主题)的 function.php 文件中。经过测试并有效。
\n\n\n\n注意:在后端(管理员)中
\nWoocommerce>Status>Tools>"WooCommerce transients"单击“清除瞬态”按钮\xe2\x80\xa6
| 归档时间: |
|
| 查看次数: |
3636 次 |
| 最近记录: |