【发布时间】:2022-01-27 00:40:13
【问题描述】:
在安装了 Divi 主题的 woocommerce 安装中,我使用的是产品简码:[products limit="-1" columns="3" per_page="12" paginate="true"]。在functions.php 中,我正在尝试使用woocommerce_product_query 过滤显示的产品,但它不起作用。我仍然得到所有产品
function my_pre_get_posts_query2( $query ) {
$query->set( 'post__in', [245609, 245610]);
}
add_action( 'woocommerce_product_query', 'my_pre_get_posts_query2', 9999, 1 );
【问题讨论】:
-
您需要在产品简码中添加属性,例如 [products limit="-1" columns="3" per_page="12" paginate="true" ids="245609, 245610"] 对于这个你可以访问,woocommerce.com/document/woocommerce-shortcodes
-
@YagnikSangani 好的,但我怎么能做到动态呢?例如,每个登录的用户都必须看到特定的产品。如何编辑此短代码?
-
有两种方法可以做到这一点,但这取决于你想如何使用上面的短代码,方法是添加属性“ids”,第二种方法是使用过滤钩子“woocommerce_shortcode_products_query”可以做一些你想添加的条件。你可以在这里找到那个过滤器,woocommerce.com/document/woocommerce-shortcodes
-
我已经用例子详细回答过了,你可以看我的回答。
标签: php wordpress woocommerce divi