كان لدى أحد طلاب الدورة الممتازة مطلب بسيط على ما يبدو. لم يرغب موكلها في إظهار ” ما هو PayPal؟ نص (ورابط) في صفحة الخروج. في الواقع ، لماذا إرسال المستخدمين بعيدًا عن الخروج؟ ومن لا يعرف ما هي PayPal في الوقت الحاضر؟ حسنًا ، دعنا نرى كيف يتم ذلك عبر “عامل تصفية” بسيط – لكن هذه المرة أود أن أعرض عليك برنامجًا تعليميًا خطوة بخطوة! اسمحوا لي أن أعرف ما هو رأيك في هذا في التعليقات 🙂
WooCommerce “ما هو PayPal” عند السداد
WooCommerce “ما هو PayPal” عند السداد
1. WooCommerce Plugin File Search
أولاً ، نحاول معرفة مكان إنشاء “ما هو PayPal” ، وعادةً ما تكون وظيفة PHP. في الواقع ، هذا ما يظهر في ملف woocommerce \ include \ gateways \ paypal \ class-wc-gateway-paypal.php:
/**
* Get gateway icon.
* @return string
*/
public function get_icon() {
$icon_html = '';
$icon = (array) $this->get_icon_image( WC()->countries->get_base_country() );
foreach ( $icon as $i ) {
$icon_html .= '<img src="' . esc_attr( $i ) . '" alt="' . esc_attr__( 'PayPal Acceptance Mark', 'woocommerce' ) . '" />';
}
$icon_html .= sprintf( '<a href="%1$s" class="about_paypal" onclick="javascript:window.open(\'%1$s\',\'WIPaypal\',\'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=1060, height=700\'); return false;" title="' . esc_attr__( 'What is PayPal?', 'woocommerce' ) . '">' . esc_attr__( 'What is PayPal?', 'woocommerce' ) . '</a>', esc_url( $this->get_icon_url( WC()->countries->get_base_country() ) ) );
return apply_filters( 'woocommerce_gateway_icon', $icon_html, $this->id );
}
2. بوم! الوظيفة “قابلة للتصفية”
يعطينا WooCommerce هذا ، حتى نتمكن من “تصفية” أو “تحرير” سلوك هذه الوظيفة دون الحاجة إلى تجاوز ملفات WooCommerce الأساسية:
return apply_filters( 'woocommerce_gateway_icon', $icon_html, $this->id );
3. لنجد كود HTML الذي نحتاج إلى تصفيته
الآن بعد أن علمنا أن الوظيفة قابلة للتحرير عبر خطاف (عامل تصفية) ، اكتشفنا أن رابط “What is PayPal” تمت إضافته بواسطة المتغير $ icon_html.
$icon_html .= sprintf( '<a href="%1$s" class="about_paypal" onclick="javascript:window.open(\'%1$s\',\'WIPaypal\',\'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=1060, height=700\'); return false;" title="' . esc_attr__( 'What is PayPal?', 'woocommerce' ) . '">' . esc_attr__( 'What is PayPal?', 'woocommerce' ) . '</a>', esc_url( $this->get_icon_url( WC()->countries->get_base_country() ) ) );
الرجاء ملاحظة “. =”: هذا يعني أنه تم ربط $ icon_html بالرمز $ icon_html السابق ، والذي يحتوي على صورة PayPal:
$icon_html .= '<img src="' . esc_attr( $i ) . '" alt="' . esc_attr__( 'PayPal Acceptance Mark', 'woocommerce' ) . '" />';
4. لنقم بترميز مقتطف PHP: كيفية إزالة “ما هو PayPal؟” @ الدفع
الآن بعد أن أصبح لدينا كل المعلومات ، فلنبدأ في الترميز. ألق نظرة على التعليقات في مقتطف PHP لترى ما إذا كان يمكنك متابعتي.
/**
* @snippet WooCommerce Remove "What is PayPal?" @ Checkout
* @how-to Get CustomizeWoo.com FREE
* @sourcecode https://businessbloomer.com/?p=21186
* @author Rodolfo Melogli
* @compatible WooCommerce 3.5.4
* @donate $9 https://businessbloomer.com/bloomer-armada/
*/
add_filter( 'woocommerce_gateway_icon', 'bbloomer_remove_what_is_paypal', 10, 2 );
function bbloomer_remove_what_is_paypal( $icon_html, $gateway_id ) {
if( 'paypal' == $gateway_id ) {
$icon_html = '<img src="/wp-content/plugins/woocommerce/includes/gateways/paypal/assets/images/paypal.png" alt="PayPal Acceptance Mark">';
}
return $icon_html;
}
5. ملخص
كي تختصر:
1) أقوم باستدعاء عامل التصفية باستخدام: add_filter (‘woocommerce_gateway_icon’ ، …
2) أقوم بإنشاء وظيفة تجاوز مخصصة ‘bbloomer_remove_what_is_paypal’
3) أقوم بالتمرير إلى الوظيفة متغيرين: HTML ($ icon_html) و gateway name ($ gateway_id) ، حيث نحتاج إلى التأكد من أننا تجاوزنا تلك من خلال عامل التصفية
4) أتأكد من أن هذه هي بوابة PayPal مع if> ثم
5) أقوم بتحرير متغير $ icon_html ، بمجرد قول “قم بإهمال السابق ، استخدم لي بدلاً من ذلك “
6) أعود $ icon_html إلى النظام
اسمحوا لي أن أعرف في التعليقات ما إذا كان هذا البرنامج التعليمي “الموسع” يساعد 🙂
المنشورات ذات الصلة:
WooCommerce: تعطيل بوابة الدفع حسب البلد
WooCommerce: تعطيل بوابة الدفع لدور مستخدم معين
WooCommerce: كيفية تعطيل PayPal للطلبات التي تزيد عن 100 دولار
WooCommerce: قم بتغيير رمز PayPal @ صفحة الخروج
WooCommerce: أضف رسوم الدفع لبوابة الدفع (مثل PayPal)
WooCommerce: تعطيل بوابة الدفع لطريقة شحن محددة
WooCommerce: تعطيل طريقة الدفع لفئة معينة
WooCommerce: حسابات PayPal متعددة (محلولة)
WooCommerce: قصر الشحن على دولة واحدة فقط
WooCommerce: Maxlength و Minlength لحقول الخروج
أين تضيف هذا المقتطف؟
يمكنك وضع مقتطفات PHP في الجزء السفلي من ملف function.php القالب الفرعي الخاص بك (احذف “؟>” إذا كان لديك هناك). من ناحية أخرى ، ينتقل CSS في ملف style.css الخاص بسمة الطفل. تأكد من أنك تعرف ما تفعله عند تحرير مثل هذه الملفات – إذا كنت بحاجة إلى مزيد من الإرشادات ، فيرجى إلقاء نظرة على الفيديو التعليمي المجاني الخاص بي “أين تضع تخصيص WooCommerce؟”
هل هذا المقتطف (لا يزال) يعمل؟
يرجى إعلامي في التعليقات إذا كان كل شيء يعمل كما هو متوقع. يسعدني مراجعة المقتطف إذا أبلغت بخلاف ذلك (يرجى تقديم لقطات شاشة). لقد اختبرت هذا الكود مع موضوع Storefront وإصدار WooCommerce المذكور أعلاه واستضافة صديقة لـ وورد بريس على PHP 7.3.
إذا كنت تعتقد أن هذا الرمز وفر لك الوقت والمال ، فلا تتردد في الانضمام إلى أكثر من 14000 مشترك في WooCommerce Weekly للحصول على تحديثات منشورات المدونة أو أكثر من 250 من مؤيدي Business Bloomer لمدة 365 يومًا من مزايا WooCommerce . شكرا لكم مقدما 🙂
هل تحتاج إلى مساعدة في WooCommerce؟
تحقق من دروس الفيديو المجانية هذه. يمكنك تعلم كيفية تخصيص WooCommerce بدون مكونات إضافية غير ضرورية ، وكيفية تكوين إعدادات البرنامج المساعد WooCommerce بشكل صحيح وحتى كيفية إتقان استكشاف أخطاء WooCommerce في حالة حدوث خطأ!