如果找不到产品,如何让Wooccommerce短代码显示通知



当前,如果我们使用类似[products paginate="true" limit="30" on_sale="true"]的短代码,但没有可显示的产品,则不会返回任何内容。没有类似No products founds的信息。我想修改这个功能

我发现了一个woocommerce_shortcode_products_query_results过滤器,乍一看可以更改它,但我不确定这是否是修改的正确方法

add_filter('woocommerce_shortcode_products_query_results', function ($results) {
if (!empty($results->ids)) {
return $results;
} else {
echo 'No products found';
}
});

我应该采取不同的做法吗?还有更好、更灵活的方法吗?如果是,如何?

由于@CBroe将他的答案作为评论发布,我决定将其复制为正确的答案,这样其他用户会更容易找到它:

否,该过滤器用于操作首先选择产品的数据库查询。我认为woocommerce_shortcode_products_loop_no_results是你应该关注的。https://github.com/woocommerce/woocommerce/blob/master/includes/shortcodes/class-wc-shortcode-products.php#L680当没有找到产品时,输出您想要显示的任何消息。

相关内容

  • 没有找到相关文章