【问题标题】:Is it possible to hide specific Product Variations on WooCommerce?是否可以在 WooCommerce 上隐藏特定的产品变体?
【发布时间】:2017-05-23 22:58:35
【问题描述】:

我目前正在开发一个 WordPress 电子商务网站,选择的购物平台是 WooCommerce。

我希望能够隐藏“缺货”产品变体,但似乎无法在 Internet 上的任何地方找到解决方案。

例如,假设我有一家鞋店,网站销售鞋子。产品下拉菜单如下:

  • 鞋码
    • 9
    • 10
    • 11
  • 鞋色
    • 红色
    • 蓝色
    • 黄色
  • 鞋款
    • 培训师
    • 休闲
    • 魔术贴

假设该网站没有蓝色 9 号运动鞋。如果购物者从下拉菜单中选择其中任何一个选项,其他选项将被删除/灰显。

我了解 WooCommerce 设置中有一个“隐藏缺货”选项,但这只会影响主要产品,而不是产品变体。

我已尝试在产品页面的后端手动删除产品变体,但变体仍然存在;只会出现一条消息,说“此产品不可用。请选择其他组合。'

任何关于此事的指导,将不胜感激。

【问题讨论】:

    标签: php wordpress woocommerce


    【解决方案1】:
    function custom_wc_ajax_variation_threshold( $qty, $product ) {
        return 10;
    }
    
    add_filter( 'woocommerce_ajax_variation_threshold', 'custom_wc_ajax_variation_threshold', 10, 2 );
    

    将此代码粘贴到您的functions.php文件中

    【讨论】:

    • 为什么要返回 10 ?
    • 感谢您的回复@Raj Kumar Bhardwaj 不幸的是,这不起作用。我需要在函数中添加任何内容吗?我注意到有些人说,如果只有一种变体,WooCommerce 允许产品变灰。问题在于如果有超过 1 个变体,那么您将需要处理组合。
    • 好的,让我们开始吧,让我测试一下我的结局,但这对我有用,让我们看看我能为你做些什么,所以我有问题是你想隐藏产品的变体,这是目前不可用吧?
    • 嗨,拉杰,是的。我在一个产品变体上有 4 个产品属性。 When a specific Product Variation in the first attribute is selected, I want 'non available' Variations within the other attributes to be removed.
    【解决方案2】:

    只需将以下内容粘贴到functions.php中

    function custom_wc_ajax_variation_threshold( $qty, $product ) {
        return 10;
    }
    
    add_filter( 'woocommerce_ajax_variation_threshold','custom_wc_ajax_variation_threshold', 10, 2 );
    

    然后改'return 10;'不管你有多少变化。

    请注意,这可能会减慢页面加载时间,具体取决于您的主机

    【讨论】:

      【解决方案3】:

      首先,取消选中“从目录中隐藏缺货商品”框。然后将其粘贴到相应的插件或主题文件中:

      function hide_out_of_products( $is_visible, $id ) {
      $product = new wC_Product( $id );
      
          if ( ! $product->is_in_stock()) {
              $is_visible = false;
          }
      
          return $is_visible;
      }
      add_filter( 'woocommerce_product_is_visible', 'hide_out_of_products', 10, 2 );
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-01-27
        • 1970-01-01
        • 2023-01-27
        • 1970-01-01
        • 2016-06-26
        • 2018-02-26
        • 2018-09-26
        相关资源
        最近更新 更多