在Woocommerce中为结帐表单添加自定义字段

时间:2014-04-11 00:28:12

标签: php wordpress woocommerce

我想在结帐表单中添加自定义字段Woocommerce。该字段显示我想要的方式但是,name和id属性是错误的。这是我创建我的领域的功能。

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

// Our hooked in function - $fields is passed via the filter!
function custom_override_checkout_fields( $fields ) {
     $fields['billing']['billing_infos'] = array(
        'type'      => 'textarea',
        'label'     => __('Notes de la commande', 'woocommerce'),
    'placeholder'   => _x('Commentaires concernant votre commande', 'placeholder', 'woocommerce'),
    'required'  => false,
    'class'     => array('form-row-wide'),
    'clear'     => true
     );

     return $fields;
}

以下是我在表单中的称呼方式:

<?php woocommerce_form_field( $checkout->checkout_fields['billing'], $checkout->checkout_fields['billing']['billing_infos'], $checkout->get_value( 'billing_infos' ) ); ?>

当我检查我的田地时,这就是我得到的:

<p class="form-row form-row-wide woocommerce-validated" id="Array_field"><label for="Array" class="">Notes de la commande</label><textarea name="Array" class="input-text " id="Array" placeholder="Commentaires concernant votre commande" rows="2" cols="5"></textarea>
                </p>

2 个答案:

答案 0 :(得分:4)

我解决了我的问题。我调用的函数的第一个参数是错误的。

以下是我应该如何称呼它:

<?php woocommerce_form_field( 'billing_infos', $checkout->checkout_fields['billing']['billing_infos'], $checkout->get_value( 'billing_infos' ) ); ?>

答案 1 :(得分:-2)

如果您仍在寻找解决方案有简单的插件。

这里是链接。

https://wordpress.org/plugins/woo-custom-checkout-field/

感谢。