如何在WooCommerce中将选择自定义字段添加到签出页面?
我在WooCommerce的结帐页面中添加了额外的字段, 我已经添加了基本的文本字段,但是我想要一个带有一些选项的下拉框或选择框, 这是我到目前为止所做的,但我在某个地方犯了一个错误如何在WooCommerce中将选择自定义字段添加到签出页面?,woocommerce,Woocommerce,我在WooCommerce的结帐页面中添加了额外的字段, 我已经添加了基本的文本字段,但是我想要一个带有一些选项的下拉框或选择框, 这是我到目前为止所做的,但我在某个地方犯了一个错误 $fields['billing']['billing_meat'] = array( 'label' => __('Food options', 'woocommerce'), 'placeholder' => _x('', 'placeholder', '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'),
也许我没有正确定义“类型”字段
谢谢加载如果这是您的确切代码,那么问题是您在
'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' )
)
);
请注意,我也没有在选项数组键上使用\uu()。最好不要翻译这些内容。这很有效。这是我的密码
// 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_下拉列表下。我使用“admin columns”插件在order表中添加了一个字段(admin端)。在我的自定义字段“dropdown”下,没有显示任何值。在哪里可以检索该值?我的另一个自定义字段“目的”也是如此,它位于“\u billing\u purpose”下,类型=>'textarea'。谢谢
这是一个截图
我知道这是一个旧线程,但由于您似乎没有得到所需的答案,因此需要使用字段值更新订单元。下面是如何做到这一点的:/***使用字段值更新订单元*/添加操作('woocommerce\u checkout\u Update\u order\u meta','dropdown\u Update\u order\u meta');函数下拉菜单\u update\u order\u meta($order\u id){if(!empty($POST['dropdown']){update\u POST\u meta($order\u id,'您是如何找到我们的'),清理文本字段($\u POST['dropdown']);}