6

我在 WooCommerce 的结帐页面中添加了额外的字段,我已经添加了基本的文本字段,但是我想要一个带有一些选项的下拉菜单或选择框,这是我到目前为止所做的,但我已经做了一个某处出错

$fields['billing']['billing_meat'] = array(
    'label'     => __('Food options', 'woocommerce'),
'placeholder'   => _x('', 'placeholder', 'woocommerce'),
'required'  => false,
'clear'     => false
'type'  => 'select',

'options' => array(                     // array of key => value pairs for select options
            __('I eat meat', 'woocommerce') => __('I eat mate', 'woocommerce'),
            __('meat is gross', 'woocommerce') => __('meat is gross', 'woocommerce'),

也许我没有正确定义“类型”字段?

感谢负载

4

2 回答 2

11

如果那是您的确切代码,那么问题是您在'clear' => false.

我已经对此进行了测试,并且可以正常工作:

$fields['billing']['billing_meat'] = array(
    'label'       => __('Food options', 'woocommerce'),
    'placeholder' => _x('', 'placeholder', 'woocommerce'),
    'required'    => false,
    'clear'       => false,
    'type'        => 'select',
    'options'     => array(
        'eat-meat' => __('I eat maet', 'woocommerce' ),
        'not-meat' => __('Meat is gross', 'woocommerce' )
        )
    );

请注意,我也没有__()在选项数组键上使用。最好不要翻译这些。

于 2012-10-01T05:14:34.717 回答
6

这是有效的。这是我的代码

// Hook in
add_filter( 'woocommerce_checkout_fields' , 'dropdown' );

// Our hooked in function - $fields is passed via the filter!
function dropdown( $fields ) {
     $fields['billing']['dropdown'] = array(
        'label'     => __('dropdown', 'woocommerce'),
    'placeholder'   => _x('dropdown', 'placeholder', 'woocommerce'),
    'required'  => false,
    'class'     => array('form-row-wide'),
    'clear'     => true,
    'type'      => 'select',
     'options'     => array(
        'option 1' => __('option 1', 'woocommerce' ),
        'option 2' => __('option 2', 'woocommerce' )
        )//end of options
     );

     return $fields;
}

这行得通。但似乎该值没有保存在_billing_dropdown 下。我使用“管理列”插件在订单表(管理端)中添加一个字段。在我的自定义字段“下拉列表”下,没有显示任何值。我在哪里可以检索值?我的另一个自定义字段“目的”也是如此,它位于“_billing_ purpose”下并且是 type=>'textarea'。谢谢!

这是截图 https://scontent-b-hkg.xx.fbcdn.net/hphotos-xpf1/v/t1.0-9/10696182_985415141473105_5302358697439449940_n.jpg?oh=74cb5ebc6b1ad6dd0c29e51293b61fdf&oe=55C

于 2014-12-09T01:41:35.507 回答