معرفی قابلیت ارسال رایگان در ووکامرس
ارسال رایگان یکی از مهمترین تکنیکهای افزایش فروش در فروشگاههای اینترنتی است. بسیاری از کاربران زمانی که متوجه میشوند با افزایش مقدار خیلی کمی به مبلغ سبد خرید خود میتوانند ارسال رایگان دریافت کنند، محصولات بیشتری را به سبد اضافه میکنند. به همین دلیل، استفاده از سیستم نمایش اعلان و نوار پیشرفت ارسال رایگان میتواند تاثیر مستقیمی بر افزایش نرخ تبدیل و رشد فروش داشته باشد. در این آموزش قصد داریم یک کد حرفهای و بهینه برای ووکامرس معرفی کنیم که امکان فعالسازی ارسال رایگان هوشمند را فراهم میکند و به مشتریان اطلاع میدهد تا چه مقدار با ارسال رایگان فاصله دارند.
<?php
add_filter('woocommerce_get_sections_shipping', function($sections) {
$sections['custom_free_shipping_notice'] = 'ارسال رایگان سفارشی';
return $sections;
});
add_filter('woocommerce_get_settings_shipping', function($settings, $current_section) {
if ($current_section === 'custom_free_shipping_notice') {
$settings = array(
array(
'title' => 'تنظیمات ارسال رایگان سفارشی',
'type' => 'title',
'id' => 'custom_free_shipping_notice_title'
),
array(
'title' => 'فعالسازی ویژگی',
'desc' => 'اگر فعال باشد، اعلان و ارسال رایگان فعال میشوند.',
'id' => 'enable_custom_free_shipping_notice',
'type' => 'checkbox',
'default' => 'yes'
),
array(
'title' => 'حد نصاب ارسال رایگان (تومان)',
'desc' => 'بعد از رسیدن مجموع سبد به این مبلغ، ارسال رایگان میشود.',
'id' => 'custom_free_shipping_amount',
'type' => 'number',
'css' => 'width:120px;',
'default' => 500000,
'desc_tip' => true
),
array(
'type' => 'sectionend',
'id' => 'custom_free_shipping_notice_end'
),
);
}
return $settings;
}, 10, 2);
add_action('wp_footer', 'custom_free_shipping_notice_in_content');
function custom_free_shipping_notice_in_content() {
if (get_option('enable_custom_free_shipping_notice') !== 'yes') return;
if (!function_exists('WC') || !WC()->cart) return;
if (!is_cart() && !is_checkout()) return;
$free_shipping_amount = (int) get_option('custom_free_shipping_amount', 500000);
$cart_total = WC()->cart->get_subtotal() - WC()->cart->get_discount_total();
$remaining = max(0, $free_shipping_amount - $cart_total);
$progress = ($free_shipping_amount > 0) ? min(100, ($cart_total / $free_shipping_amount) * 100) : 100;
$message = $remaining > 0
? 'فقط ' . number_format($remaining) . ' تومان دیگر خرید کنید تا ارسال رایگان داشته باشید 🚚'
: '🎉 تبریک! سفارش شما شامل ارسال رایگان است.';
$bar_color = $remaining > 0 ? '#007bff' : '#28a745';
$success_class = $remaining > 0 ? '' : 'success';
echo "
{$message}
";
}
add_filter('woocommerce_package_rates', 'apply_custom_free_shipping_hello_elementor', 100, 2);
function apply_custom_free_shipping_hello_elementor($rates, $package) {
if (get_option('enable_custom_free_shipping_notice') !== 'yes') return $rates;
if (!WC()->cart || WC()->cart->is_empty()) return $rates;
$free_shipping_amount = (int) get_option('custom_free_shipping_amount', 500000);
$cart_total = WC()->cart->get_subtotal() - WC()->cart->get_discount_total();
if ($cart_total < $free_shipping_amount) return $rates;
foreach ($rates as $rate_key => $rate) {
$rates[$rate_key]->cost = 0;
if (isset($rates[$rate_key]->taxes) && is_array($rates[$rate_key]->taxes)) {
foreach ($rates[$rate_key]->taxes as $tax_id => $tax_amount) {
$rates[$rate_key]->taxes[$tax_id] = 0;
}
}
$rates[$rate_key]->label .= ' — ارسال رایگان 🎁';
}
return $rates;
}

عملکرد کد ارسال رایگان سفارشی
این کد چندین قابلیت حرفهای را به ووکامرس اضافه میکند. اولین ویژگی، افزودن یک بخش جدید در تنظیمات حملونقل ووکامرس است که در آن گزینه فعالسازی ارسال رایگان و تعیین حداقل مبلغ سبد خرید برای بهرهمندی از ارسال رایگان قرار دارد. این تنظیمات به مدیر فروشگاه اجازه میدهد بدون نیاز به ویرایش کد، مقادیر و شرایط ارسال رایگان را تغییر دهد.
علاوه بر این، کد در صفحه سبد خرید و صفحه پرداخت یک اعلان قرار میدهد که به مشتری نشان میدهد چه مقدار دیگر نیاز است تا شرایط ارسال رایگان فعال شود. این پیام زمانی که کاربر به مقدار تعیینشده برسد تغییر کرده و به صورت پیام تبریک نمایش داده میشود.
نمایش نوار پیشرفت برای رسیدن به ارسال رایگان

یکی از بخشهای جذاب این کد، نمایش نوار پیشرفت خرید است. این نوار به صورت درصدی نشان میدهد چه مقدار از مبلغ لازم برای ارسال رایگان طی شده است. هماهنگی کامل این نوار پیشرفت با پیام بالایی، موجب میشود مشتری بهصورت بصری نیز به ادامه خرید تشویق شود. این نوار بدون نیاز به کتابخانههای اضافی یا افزونههای دیگر اجرا میشود و کاملاً ریسپانسیو است.
تاثیر روانشناسی نوار پیشرفت در فروش
مطالعات بازاریابی نشان میدهد مشتریان زمانی که یک مسیر نیمهتمام را مشاهده میکنند، تمایل بیشتری برای تکمیل آن دارند. نوار پیشرفت به مشتری احساس نزدیک بودن به هدف را میدهد و همین موضوع باعث افزایش احتمال تکمیل خرید بزرگتر میشود. در فروشگاههای آنلاین، همین تکنیک ساده میتواند نرخ تبدیل را تا چندین درصد افزایش دهد و از رها شدن سبد خرید جلوگیری کند.
اعمال خودکار هزینه حملونقل رایگان
هنگامی که مشتری به مبلغ تعیینشده برسد، سیستم حملونقل به صورت خودکار هزینه ارسال را صفر میکند. این موضوع باعث میشود مشتری نیاز به انتخاب گزینه جدید نداشته باشد و تجربه خرید بهبود یابد. همچنین پیام “ارسال رایگان فعال شد” کنار روش حملونقل نمایش داده میشود تا شفافیت کامل برای کاربر فراهم شود. این فرآیند بدون نیاز به افزونه اضافه و تنها با استفاده از فیلترهای ووکامرس اجرا میشود.
سازگاری با قالبها و المنتور
این کد با قالب Hello Elementor، فلتسام، وودمارت و سایر قالبهای استاندارد ووکامرس سازگار است. همچنین اعلان نمایش داده شده به صورت خودکار در بالای محتوای المنتور و بخش WooCommerce قرار میگیرد. در صورتی که قالب یا صفحهساز خاصی استفاده شود نیز امکان سفارشیسازی محل نمایش با یک خط تغییر کد وجود دارد.
مزایای استفاده از این سیستم ارسال رایگان
استفاده از اعلان و نوار پیشرفت ارسال رایگان باعث افزایش نرخ تکمیل سفارش، بهبود تجربه کاربری، کاهش نرخ رهاسازی سبد و افزایش رفتار خرید برنامهریزی نشده میشود. این روش بدون وابستگی به افزونه و با کدنویسی تمیز اجرا شده و کاملاً قابل توسعه است. مدیر فروشگاه میتواند بدون دانش برنامهنویسی مبلغ حد نصاب ارسال رایگان را تغییر دهد یا قابلیت را فعال و غیرفعال کند.
پیشنهادات برای استفاده حرفهای از کد
اگر فروشگاه دارای تخفیفهای دورهای است، بهتر است مبلغ ارسال رایگان کمی بالاتر از متوسط سفارش تنظیم شود. برای فروشگاههایی که چند روش حملونقل دارند نیز توصیه میشود هزینه روشهای دیگر حفظ شده و فقط پس از رسیدن به حد تعیینشده ارسال رایگان فعال شود تا ارزش آن حس شود. میتوان برای جذابیت بیشتر پیام اعلان را از نظر عاطفی و انگیزشی تغییر داد یا از ایموجی مخصوص برند استفاده کرد.
امکان تبدیل کد به افزونه اختصاصی
این کد قابلیت تبدیل سریع به یک افزونه سفارشی را دارد. ساخت افزونه برای این قابلیت باعث میشود هنگام تغییر قالب یا بروزرسانی فایل functions.php تنظیمات حفظ شوند. همچنین میتوان امکانات دیگری مانند نمایش AJAX زنده یا نمایش نوار پیشرفت در صفحه محصول نیز اضافه کرد.
نتیجهگیری
این کد یک راهحل کامل و هوشمند برای فعالسازی سیستم ارسال رایگان در ووکامرس است. ارائه پیام تشویقی و نوار پیشرفت باعث افزایش تعامل کاربر و افزایش فروش میشود. این سیستم کاملاً قابل تنظیم بوده و تجربه خرید کاربر را به شکلی حرفهای ارتقا میدهد. استفاده از این روش میتواند به هر فروشگاه اینترنتی کمک کند تا با افزایش متوسط ارزش سفارش، سود بیشتری کسب کند و مشتریان بیشتری را به خرید ترغیب نماید.