آیا تا به حال به این فکر کردی که فرآیند خرید آنلاین چقدر میتونه سادهتر و سریعتر بشه؟!
تو دنیای فروشگاه های اینترنتی، تقریبا میشه گفت همیشه نیاز داریم که تجربهای راحتتر، سریعتر و بدون پیچیدگی برای مشتریان داشته باشیم. یکی از ویژگیهای فوقالعاده که میتونه این تجربه رو متحول کنه، افزودن تعداد زیادی از محصولات به سبد خرید از طریق URL و تنظیم مقادیرش به صورت پیشفرض هست. در ادامه کدی رو در اختیارتون میزارم که با اون به راحتی میتونید این مورد رو در سایت وردپرسیتون هندل کنید.
add_action( 'template_redirect', function() { // فقط برای درخواستهای چندگانه Add-to-Cart if( ! class_exists( 'WC_Form_Handler' ) || empty( $_REQUEST['add-to-cart'] ) || ! strpos( $_REQUEST['add-to-cart'], '-' ) // تغییر از `,` به `-` ) { return; } // دریافت درخواستها $product_ids = explode('-', urldecode($_REQUEST['add-to-cart'])); $quantities = !empty($_REQUEST['quantity']) ? explode('-', urldecode($_REQUEST['quantity'])) : []; // تنظیم مقدار پیشفرض ۱ برای مواردی که تعداد مشخص نشده است foreach ($product_ids as $index => $product_id) { $quantities[$index] = isset($quantities[$index]) ? absint($quantities[$index]) : 1; } // متوقف کردن پردازش پیشفرض ووکامرس remove_action( 'wp_loaded', [ 'WC_Form_Handler', 'add_to_cart_action' ], 20 ); // افزودن محصولات به سبد خرید foreach( $product_ids as $i => $product_id ) { $product_id = absint( $product_id ); $quantity = wc_stock_amount( absint( $quantities[$i] ) ); $added_to_cart = WC()->cart->add_to_cart( $product_id, $quantity ); if( $added_to_cart ) { wc_add_to_cart_message( [ $product_id => $quantity ], true ); } } } ); //لینکی که باید به مشتری بدی یا توی دکمه بزاری: https://example.com/?add-to-cart=500-501-502&quantity=100-200-150
لازم به ذکره که این کد معمولا در سناریو های زیر میتونه کارایی داشته باشه!
- سفارشات گروهی یا عمده
- لینکهای تبلیغاتی یا تبلیغات ایمیلی
- فرایند خرید آسانتر برای مشتریان تکراری
- افزودن محصولات به سبد خرید از طریق تخفیفها یا پیشنهادات ویژه
- مدیریت خرید محصولات در بستههای خاص