使自定义字段成为必需的WooCommerce

问题描述 投票:1回答:1

如果我没有正确地提出这个问题,请耐心等待。我正在尝试修改WooCommerce自定义字段以使其成为必需。

功能如下:

public function delivery_checkout_field( $checkout )
    {
        echo '<div class="checkout-delivery" id="delivery_checkout_field">';
        echo '<input class="js-picker-object" type="hidden" value="' . esc_attr( json_encode( $this->delivery_get_picker_object() ) ) . '" />';
        echo '<h3 class="with-description">' . __( 'Delivery Schedule', 'gastro-core' ) . '</h3>';
        echo '<p class="description">Enter your desired delivery time or leave blank, if you don\'t have one.</p>';

        woocommerce_form_field( 'delivery_date', array(
            'type'          => 'text',
            'class'         => array( 'delivery-field form-row-first' ),
            'label'         => __( 'Delivery Date' ),
            'placeholder'   => __( 'Enter delivery date.' ),
        ), $checkout->get_value( 'delivery_date' ) );

        woocommerce_form_field( 'delivery_time', array(
            'type'          => 'text',
            'class'         => array( 'delivery-field form-row-last' ),
            'label'         => __( 'Delivery Time' ),
            'placeholder'   => __( 'Enter delivery time.' ),
        ), $checkout->get_value( 'delivery_time' ) );


        echo '</div>';
    }

此部分保存字段。

// Save delivery data
    public function delivery_checkout_field_update( $order_id )
    {
        if ( !empty( $_POST['delivery_date'] ) ) {
            update_post_meta(
                $order_id,
                'Delivery Date',
                sanitize_text_field( $_POST['delivery_date'] )
            );
        }

        if ( !empty( $_POST['delivery_time'] ) ) {
            update_post_meta(
                $order_id,
                'Delivery Time',
                sanitize_text_field( $_POST['delivery_time'] )
            );
        }
    }
php wordpress woocommerce checkout shipping
1个回答
0
投票

对于所需的HTML5属性和其他自定义属性,woocommerce函数具有custom_attributes选项。

'custom_attributes' => array( 'required' => 'required' )
© www.soinside.com 2019 - 2024. All rights reserved.