将Woocommerce产品限制为仅限登录用户

时间:2018-03-29 06:22:14

标签: php woocommerce hook-woocommerce

我正在创建一个电子商务商店,其功能是向所有访问者显示前5个产品,其余产品仅供登录用户使用,是否有任何钩子或插件可以帮助实现这一目标?

我想到的一个解决方案是在主题中 - > functions.php添加一个在所有wooCoomerce循环之前触发的钩子,在那里我们修改archive-products.php查询,如下所示:

function limited_products(){
 if(!is_logged_in()){
     global $query;
     $query->set(array('limit'=>'5')); 
 } 
} 

我确信必须有这种解决方案,但我不知道究竟是怎么做的。

1 个答案:

答案 0 :(得分:0)

您可以自定义woocommerce / archive-product.php模板并在循环中添加条件,如果计数超过5并且用户未登录,则继续。

但是这样,如果用户已经拥有其他产品的网址,那么他/她就可以访问它。如果您希望他们根本不访问这些产品,那么当他们访问这5种产品以外的产品时,您需要单独重定向产品详细信息页面。

如果有帮助,请告诉我。