在WooCommerce结算表单中添加自定义字段?

JPa*_*shs 2 php wordpress checkout woocommerce hook-woocommerce

我得到此代码以向WooCommerce Billing表单添加自定义字段.

显示该字段但问题是该字段没有labelplaceholder没有class name.

我在这里错过了什么?我将此代码添加到我的子主题中的functions.php中.

/*******************************
  CUSTOM BILLING FIELD
 ******************************** */
add_filter('woocommerce_billing_fields', 'custom_woocommerce_billing_fields');

function custom_woocommerce_billing_fields($fields)
{

    $fields['billing']['billing_options'] = array(
        'label' => __('NIF', 'woocommerce'), // Add custom field label
        'placeholder' => _x('Your NIF here....', 'placeholder', 'woocommerce'), // Add custom field placeholder
        'required' => false, // if field is required or not
        'clear' => false, // add clear or not
        'type' => 'text', // add field type
        'class' => array('my-css')    // add class name
    );

    return $fields;
}
Run Code Online (Sandbox Code Playgroud)

Rau*_*pta 15

如果您正在使用,woocommerce_billing_fields则无需指定将自动分配到开票字段的字段.但是如果你正在使用woocommerce_checkout_fields那么只需要指定你想要一个字段shippingbilling.

对于 woocommerce_billing_fields

add_filter('woocommerce_billing_fields', 'custom_woocommerce_billing_fields');

function custom_woocommerce_billing_fields($fields)
{

    $fields['billing_options'] = array(
        'label' => __('NIF', 'woocommerce'), // Add custom field label
        'placeholder' => _x('Your NIF here....', 'placeholder', 'woocommerce'), // Add custom field placeholder
        'required' => false, // if field is required or not
        'clear' => false, // add clear or not
        'type' => 'text', // add field type
        'class' => array('my-css')    // add class name
    );

    return $fields;
}
Run Code Online (Sandbox Code Playgroud)


对于 woocommerce_checkout_fields

add_filter('woocommerce_checkout_fields', 'custom_woocommerce_billing_fields');

function custom_woocommerce_billing_fields($fields)
{
    $fields['billing']['billing_options'] = array(
        'label' => __('NIF', 'woocommerce'), // Add custom field label
        'placeholder' => _x('Your NIF here....', 'placeholder', 'woocommerce'), // Add custom field placeholder
        'required' => false, // if field is required or not
        'clear' => false, // add clear or not
        'type' => 'text', // add field type
        'class' => array('my-css')   // add class name
    );

    return $fields;
}
Run Code Online (Sandbox Code Playgroud)

参考:

跳这有帮助!

  • 实际上该字段已保存,只是没有显示。例如,向管理订单数据添加一个操作将实现以下技巧 `add_action( 'woocommerce_admin_order_data_after_shipping_address', 'my_custom_checkout_field_display_admin_order_meta', 10, 1 ); function my_custom_checkout_field_display_admin_order_meta($order){ echo '<p><strong>'.__('自定义字段标题').':</strong> ' . get_post_meta( $order->get_id(), '_shipping_custom_field', true ) 。'</p>'; }` (3认同)