Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Mengira Item Troli Pengepala Ajaxify dalam WooCommerce?
Item Troli Pengepala Ajaxify Dikira dalam WooCommerce
Cabaran
Dalam bersepadu WooCommerce tersuai Tema WordPress, isu timbul apabila penunjuk kiraan item troli memaparkan nilai yang salah selepas menambah item. Pelakunya telah menambahkan kuantiti item tertentu pada troli, menyebabkan penunjuk hanya bertambah satu.
Penyelesaian
Untuk menangani perkara ini, kami boleh memanfaatkan WooCommerce yang berdedikasi cangkuk tindakan woocommerce_add_to_cart_fragments, yang menyediakan sokongan Ajax untuk mengemas kini kiraan item troli.
Pelaksanaan
1. HTML dan ID/Kelas
Dalam fail header.php tema, kami mentakrifkan elemen HTML yang akan memaparkan kiraan troli. Adalah penting untuk menetapkan ID atau kelas unik untuk penyasaran mudah:
<code class="html"><div id="mini-cart-count"><?php echo WC()->cart->get_cart_contents_count(); ?></div></code>
2. Kod PHP
Seterusnya, kami menambah fungsi pada fail functions.php yang menggunakan cangkuk untuk mengemas kini kandungan kiraan troli secara dinamik:
<code class="php">add_filter( 'woocommerce_add_to_cart_fragments', 'wc_refresh_mini_cart_count'); function wc_refresh_mini_cart_count($fragments){ ob_start(); $items_count = WC()->cart->get_cart_contents_count(); ?> <div id="mini-cart-count"><?php echo $items_count ? $items_count : ' '; ?></div> <?php $fragments['#mini-cart-count'] = ob_get_clean(); return $fragments; }</code>
3. Kemas Kini Ajax
Jika anda memerlukan kawalan tambahan dengan jQuery, pertimbangkan untuk menggunakan acara wc_fragment_refresh atau wc_fragments_refreshed:
<code class="javascript">$(document.body).trigger('wc_fragment_refresh');</code>
atau
<code class="javascript">$(document.body).trigger('wc_fragments_refreshed');</code>
Dengan melaksanakan perubahan ini , penunjuk kiraan item troli akan menggambarkan bilangan item dalam troli dengan tepat, walaupun semasa menambah kuantiti produk tertentu.
Atas ialah kandungan terperinci Bagaimana untuk Mengira Item Troli Pengepala Ajaxify dalam WooCommerce?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!