【问题标题】:Hide a variation attribute value in Woocommerce variable product dropdown在 Woocommerce 变量产品下拉列表中隐藏变体属性值
【发布时间】:2019-07-25 22:08:28
【问题描述】:

我想隐藏特定的变体,使其不显示在 woocommerce 产品页面的下拉列表中。我能够隐藏“选择一个选项”,但我正在努力为 value="2,5 kg" 做同样的事情

这是我隐藏“选择一个选项”的代码:

add_filter( 'woocommerce_dropdown_variation_attribute_options_html', 'remove_choose_an_option'); 
function remove_choose_an_option( $html ){ 
    $html = str_replace('<option value="">' . __( 'Choose an option', 'woocommerce' ) . '</option>','',$html);
    return $html; 
}

但是,例如,如何隐藏 value="2,5 kg" 的变化? 示例产品:https://www.keimster.de/produkt/gekeimtes-gesundes-muesli/

我也尝试过使用 css,但是这两个都不起作用

#groesse > option[value=2,5 kg], #groesse > option:nth-child(1) {display: none;}

【问题讨论】:

    标签: php wordpress woocommerce dropdown taxonomy-terms


    【解决方案1】:

    尝试以下操作,这将隐藏“选择一个选项”,并从单变量产品页面的产品属性下拉列表中隐藏“2,5 kg”选项值:

    add_filter( 'woocommerce_dropdown_variation_attribute_options_args', 'filter_dropdown_variation_args', 10, 1 );
    function filter_dropdown_variation_args( $args ) {
        // Dont show "Choose an option"
        $args['show_option_none'] = false;
    
        // Remove the option value "2,5 kg"
        foreach( $args['options'] as $key => $option ){
            if( $option === "2,5 kg" ) {
                unset($args['options'][$key]);
            }
        }
        return $args;
    }
    

    代码进入您的活动子主题(或活动主题)的 function.php 文件中。它应该可以工作。

    【讨论】:

      【解决方案2】:

      您可以从编辑产品页面禁用变体,而不是代码。在产品数据元框中的变体选项卡中,您可以取消选中启用复选框。这将从前端删除下拉列表。附上相同的屏幕截图。

      enable/disable product variation

      【讨论】:

      • 感谢您的提示,但我想保留变化但不在下拉列表中显示,因此之前的答案非常适合。
      猜你喜欢
      • 2021-06-13
      • 2019-03-05
      • 1970-01-01
      • 1970-01-01
      • 2016-06-26
      • 1970-01-01
      • 2020-02-06
      • 2019-03-13
      • 2019-01-23
      相关资源
      最近更新 更多