【问题标题】:WooCommerce: Add class to variation dropdownWooCommerce:将类添加到变体下拉列表
【发布时间】:2019-10-28 16:41:49
【问题描述】:

我想将 .form-control 类添加到 WooCommerce 产品页面的变体下拉列表中。

似乎可以选择这样做。我找到了函数wc_dropdown_variation_attribute_options

函数有一个类属性:

function wc_dropdown_variation_attribute_options( $args = array() ) { 
$args = wp_parse_args( apply_filters( 'woocommerce_dropdown_variation_attribute_options_args', $args ), array( 
    'options' => false,  
    'attribute' => false,  
    'product' => false,  
    'selected' => false,  
    'name' => '',  
    'id' => '',  
    'class' => '',  
    'show_option_none' => __( 'Choose an option', 'woocommerce' ),  
 ) ); 

有没有办法将类添加到下拉列表中? 我只找到了函数但没有代码/sn-p来更改类属性。

编辑:我找到了一个自定义下拉列表的 sn-p,但我不知道如何使用它来仅添加类:https://stackoverflow.com/a/47189725/1788961

【问题讨论】:

    标签: php wordpress woocommerce


    【解决方案1】:

    答案在apply_filters( 'woocommerce_dropdown_variation_attribute_options_args', $args )

    您基本上需要使用该过滤器来访问正在传递的$args。在您的特定情况下,您会这样做:

    add_filter( 'woocommerce_dropdown_variation_attribute_options_args', static function( $args ) {
        $args['class'] = 'form-control';
        return $args;
    }, 2 );
    

    它的作用是挂钩woocommerce_dropdown_variation_attribute_options_args 过滤器并将原始$args 传递给静态函数。然后你基本上设置$args数组的class索引的值。然后你返回$args

    【讨论】:

    • 这是 100% 准确的!在过滤器描述中,所有可能的 args 都可以改变,而不仅仅是添加一个类。
    猜你喜欢
    • 1970-01-01
    • 2018-04-21
    • 2021-05-09
    • 2019-07-17
    • 2017-08-02
    • 1970-01-01
    • 2018-04-27
    • 2023-03-06
    相关资源
    最近更新 更多