Hướng dẫn thêm yêu cầu kèm theo khi mua sản phẩm trong woocommerce.

Hướng dẫn thêm yêu cầu kèm theo khi mua sản phẩm trong woocommerce.

hương dẫn tạo yêu cầu kèm them khi mua sản phẩm woocomerct

Hôm nay mình sẽ chia sẻ các bạn cách tạo thêm yêu cầu kèm theo khi mua sản phẩm trong wooommerce. cùng xem hướng dẫn và làm cùng mình nhé !

Tạo checkbox yêu cầu kèm theo

Đầu tiên chúng ta tạo một checkbox yêu cầu kèm theo như hình trên với code HTML đơn giản nhé.

<pre><code>

<input type=“checkbox” id=“yeucau” name=“yeucau” value=“HỖ TRỢ COPY DANH BẠ, HD SỬ DỤNG, GIẢI ĐÁP”>
<label for=“yeucau”>Yêu cầu nhân viên kỹ thuật giao hàng: hỗ trợ copy danh bạ, hướng dẫn sử dụng máy mới, giải đáp thắc mắc sản phẩm.
</label>

</code></pre>

Hook checkbox vào form add_to_cart

Đầu tiên chúng ta cho checkbox vào 1 function như sau:

<pre><code><?php function checkboxkemtheo(){;?>
<input type=”checkbox” id=”yeucau” name=”yeucau” value=”HỖ TRỢ COPY DANH BẠ, HD SỬ DỤNG, GIẢI ĐÁP”>
<label for=”yeucau”>Yêu cầu nhân viên kỹ thuật giao hàng: hỗ trợ copy danh bạ, hướng dẫn sử dụng máy mới, giải đáp thắc mắc sản phẩm.
</label>
<?php }</code></pre>

Và add vào hook của form add_to_cart.

add_action( ‘woocommerce_before_add_to_cart_button’, ‘checkboxkemtheo’ );

Và xong chúng ta đã xuất hiện form đó trong trang single product rồi nhé.

Kế tiếp là làm cách nào để đó có thể xuất hiện ở trang check out và trang giỏ hàng nữa thôi.

Lưu data vào trang giỏ hàng

Để có thể lưu data vào trang giỏ hàng, chúng ta sẽ sử dụng đoạn code sau

<pre>

function add_hotro_to_cart_item( $cart_item_data, $product_id, $variation_id ) {
$hotro = filter_input( INPUT_POST, ‘yeucau’ );
if ( empty( $hotro ) ) {
return $cart_item_data;
}
$cart_item_data[‘yeucau’] = $hotro;
return $cart_item_data;
}
add_filter( ‘woocommerce_add_cart_item_data’, ‘add_hotro_to_cart_item’, 10, 3 );

 

</pre>

Sau khi lưu thì chúng ta sẽ cho hiển thị

<pre>

function display_hotro_into_cart( $item_data, $cart_item ) {
if ( empty( $cart_item[‘yeucau’] ) ) {
return $item_data;
}
$item_data[] = array(

‘key’     => ‘Yêu cầu hỗ trợ’,
‘value’   => wc_clean( $cart_item[‘yeucau’] ),
‘display’ => ,
);
return $item_data;
}
add_filter( ‘woocommerce_get_item_data’, ‘display_hotro_into_cart’, 10, 2 );

</pre>

 

Hiển thị yêu cầu hỗ trợ trong checkout

Hook vào woocommerce_checkout_create_order_line_item bạn sẽ xong việc hiển thị tại checkout và quản trị admin. Add đoạn function này vào nhé

<pre>

function add_hotro_to_order_items( $item, $cart_item_key, $values, $order ) {
if ( empty( $values[‘yeucau’] ) ) {
return;
}
$item->add_meta_data(‘Yêu cầu hỗ trợ’, $values[‘yeucau’] );
}
add_action( ‘woocommerce_checkout_create_order_line_item’, ‘add_hotro_to_order_items’, 10, 4 );

</pre>

[blockid="baivietlienquan"]