من الطرق الجيدة لإعلام العملاء عبر الإنترنت وتجنب المشكلات إظهار وقت التسليم / الإرسال المقدر على صفحة منتج واحد ، أسفل زر “إضافة إلى عربة التسوق”. نعم ، يمكنك القيام بذلك يدويًا عن طريق إضافة معلومات الشحن إلى وصف موجز لكل منتج ، ولكن الهدف من Business Bloomer هو معرفة كيفية ترميز ذلك بدلاً من ذلك ، لذلك لن تحتاج إلى كتابة الأشياء يدويًا.
أيضًا ، هذا أمر رائع لأنك إذا قمت بتغيير شيء ما في قواعد الإرسال الخاصة بك ، فأنت تحتاج فقط إلى تغيير مقتطف PHP القصير وليس كل أوصاف منتجاتك. إنها أكثر مرونة بهذه الطريقة.
أخيرًا ، في هذا المنشور ، سنتعلم كيفية التعامل مع أوقات التوقف (ساعة من اليوم) واليوم الحالي من الأسبوع (PHP خالص) ، حتى نتمكن من إظهار إشعار “ديناميكي” بناءً على التاريخ الحالي. لذا ، دعنا نرى كيف يتم ذلك!
إنه يوم الإثنين قبل الساعة 4 مساءً – يطبع هذا المقتطف إشعارًا أسفل صفحة المنتج الفردية مباشرةً ، أضف إلى عربة التسوق أنه إذا طلبت بحلول الساعة 4 مساءً ، فسيتم شحن المنتج اليوم!
مقتطف PHP: عرض الإرسال / تاريخ التسليم المقدر في صفحة منتج واحد
سيناريو:
الجمعة / السبت / الأحد أوامر الشحن يوم الاثنين
للأيام الأخرى ، إذا تم الشحن قبل الساعة 4 مساءً اليوم …
… إذا تم الشحن بعد الساعة 4 مساءً غدًا
يرجى ملاحظة الدالتين ” التاريخ (” N “) ” و ” التاريخ (” H “) ” ، وهما في PHP يعطيانني على التوالي اليوم الحالي من الأسبوع والساعة الحالية من اليوم حتى أتمكن من مقارنتها بالمحلي & الوقت الحالي. انظر أيضًا إلى وظيفة ” date_default_timezone_set () ” إذا كنت تريد تعيين منطقة زمنية مختلفة ، وهو أمر حيوي لحسابات هذا المقتطف.
/**
* @snippet Dispatch Date @ WooCommerce Single Product
* @how-to Get CustomizeWoo.com FREE
* @author Rodolfo Melogli
* @testedwith WooCommerce 3.9
* @donate $9 https://businessbloomer.com/bloomer-armada/
*/
add_action( 'woocommerce_after_add_to_cart_form', 'bbloomer_dispatch_info_single_product' );
function bbloomer_dispatch_info_single_product() {
date_default_timezone_set( 'Europe/London' );
// if FRI/SAT/SUN delivery will be MON
if ( date( 'N' ) >= 5 ) {
$del_day = date( "l jS F", strtotime( "next monday" ) );
$order_by = "Monday";
}
// if MON/THU after 4PM delivery will be TOMORROW
elseif ( date( 'H' ) >= 16 ) {
$del_day = date( "l jS F", strtotime( "tomorrow" ) );
$order_by = "tomorrow";
}
// if MON/THU before 4PM delivery will be TODAY
else {
$del_day = date( "l jS F", strtotime( "today" ) );
$order_by = "today";
}
$html = "<br><div class='woocommerce-message' style='clear:both'>Order by 4PM {$order_by} for delivery on {$del_day}</div>";
echo $html;
}
المنشورات ذات الصلة:
WooCommerce: قصر الشحن على دولة واحدة فقط
WooCommerce: أضف نصًا أسفل كل صفحة متجر في كل منتج
WooCommerce: كيفية تقصير عناوين المنتج
WooCommerce: أضف رسوم الشحن للدول غير القارية
WooCommerce: الشحن فقط إلى عناوين “الاستلام المحلية” المحددة مسبقًا
WooCommerce: أضف رمزًا إلى أزرار إضافة إلى عربة التسوق
WooCommerce: أعد تسمية زر “إضافة إلى عربة التسوق” إذا كان المنتج بالفعل @ سلة التسوق
WooCommerce: إعادة تسمية وصف المنتج Tab Label @ Single Product Page
WooCommerce: إعادة توجيه صفحة منتج واحد للعملاء المسجلين
WooCommerce: صورة مميزة بعرض كامل @ صفحة منتج واحدة
أين تضيف هذا المقتطف؟
يمكنك وضع مقتطفات PHP في الجزء السفلي من ملف function.php القالب الفرعي الخاص بك (احذف “؟>” إذا كان لديك هناك). من ناحية أخرى ، ينتقل CSS في ملف style.css الخاص بسمة الطفل. تأكد من أنك تعرف ما تفعله عند تحرير مثل هذه الملفات – إذا كنت بحاجة إلى مزيد من الإرشادات ، فيرجى إلقاء نظرة على الفيديو التعليمي المجاني الخاص بي “أين تضع تخصيص WooCommerce؟”
هل هذا المقتطف (لا يزال) يعمل؟
يرجى إعلامي في التعليقات إذا كان كل شيء يعمل كما هو متوقع. يسعدني مراجعة المقتطف إذا أبلغت بخلاف ذلك (يرجى تقديم لقطات شاشة). لقد اختبرت هذا الكود مع موضوع Storefront وإصدار WooCommerce المذكور أعلاه واستضافة صديقة لـ وورد بريس على PHP 7.3.
إذا كنت تعتقد أن هذا الرمز وفر لك الوقت والمال ، فلا تتردد في الانضمام إلى أكثر من 14000 مشترك في WooCommerce Weekly للحصول على تحديثات منشورات المدونة أو أكثر من 250 من مؤيدي Business Bloomer لمدة 365 يومًا من مزايا WooCommerce . شكرا لكم مقدما 🙂
هل تحتاج إلى مساعدة في WooCommerce؟
تحقق من دروس الفيديو المجانية هذه. يمكنك تعلم كيفية تخصيص WooCommerce بدون مكونات إضافية غير ضرورية ، وكيفية تكوين إعدادات البرنامج المساعد WooCommerce بشكل صحيح وحتى كيفية إتقان استكشاف أخطاء WooCommerce في حالة حدوث خطأ!

