شارك المقال

WooCommerce B2B: كيفية إنشاء متجر بيع بالجملة

A VPN is an essential component of IT security, whether you’re just starting a business or are already up and running. Most business interactions and transactions happen online and VPN

يشهد قطاع التجارة الإلكترونية نموًا لا يصدق ، عامًا بعد عام ، مع عدم وجود نهاية متوقعة في الأفق. وينطبق الشيء نفسه على التجارة الإلكترونية بين الشركات ، ومع ذلك لا توجد العديد من خيارات النظام الأساسي الجيدة المتاحة للشركات الصغيرة والمتوسطة التي ترغب في البيع بالجملة. هناك العديد من حلول SaaS في السوق ، ولكنها مكلفة ومغلقة المصدر وموجهة في الغالب نحو الأعمال التجارية الأكبر.

إذا كنت صاحب عمل أو مطورًا ، فإن WooCommerce هو حل مجاني ومتعدد الاستخدامات وقوي.

هل WooCommerce مناسب لمتاجر B2B؟

“خارج الصندوق” ، ليس كذلك. يعد WooCommerce حلاً رائعًا لمتاجر التجارة الإلكترونية ، ولكنه لم يتم تطويره خصيصًا للبيع بالجملة ، لذا فهو يفتقر إلى العديد من الخيارات المهمة في البداية. ومع ذلك ، يمكنك استخدام مكون إضافي قوي للبيع بالجملة مثل B2BKing لتوسيع WooCommerce وإضافة جميع وظائف الأعمال التجارية التي قد تحتاجها.

هناك جانبان آخران يجب أن تكون على دراية بهما عند اختيار WooCommerce لمشروع B2B الخاص بك:

سيتطلب WooCommerce تحديثات منتظمة للمكوِّن الإضافي للتأكد من أنه آمن ويعمل بشكل صحيح.

اعتمادًا على الاستضافة وتهيئة موقع الويب ، يمكن لبيئة وورد بريس أحيانًا أن تعمل ببطء قليلاً. ومع ذلك ، هناك طرق لتحسينها وتسريعها مثل المكونات الإضافية مثل WP Rocket (أو ملحقات التخزين المؤقت والتحسين الأخرى).

على الرغم من أنها ليست مثالية ، تعمل WooCommerce حاليًا على تشغيل أكثر من 20٪ من المتاجر عبر الإنترنت في العالم ، وهناك أسباب وجيهة لذلك: إنها مجانية ومفتوحة المصدر وقوية وآمنة. هذه الصفات نفسها تجعلها أيضًا خيارًا رائعًا لمتاجر الجملة.

كيف يختلف متجر B2B عن متجر إلكتروني نموذجي؟

غالبًا ما يكون بيع شركة إلى شركة تجربة مختلفة جدًا وأكثر شخصية من البيع المباشر للمستهلكين. المشترون من رجال الأعمال على دراية ، ومنفتحون للتفاوض ، ويريدون الحصول على عروض وخصومات رائعة للشراء بالجملة. يمكن أن تختلف كتالوجات الأسعار وخيارات الخصم وخيارات الدفع والشحن بشكل كبير من عميل لآخر ، اعتمادًا على عوامل مثل حجم العمل أو حجم الطلب أو العلاقات التجارية الحالية.

من وجهة نظر تطوير موقع الويب ، يُترجم هذا إلى ضرورة الحصول على درجة عالية من المرونة الفنية عندما يتعلق الأمر بالتسعير والخصومات وقواعد الشحن والنظام.

يؤدي البيع للشركات أيضًا إلى الحاجة إلى ميزات مثل:

إخفاء الأسعار للضيوف

استمارة تسجيل الأعمال

دعم رقم ضريبة القيمة المضافة (أو المعرف الضريبي الآخر)

الإعفاءات الضريبية

طلبات الاقتباس

حقول الفواتير والسداد المخصصة

نموذج طلب بالجملة

القدرة على دعم عدة مستخدمين على حساب المشتري (لهياكل الشركات)

دعنا نمضي قدمًا وننظر في كيفية تنفيذ بعض هذه الميزات في WooCommerce. سيتم توجيه الأقسام التالية بشكل أكبر نحو المطورين وسأشارك بعض مقتطفات التعليمات البرمجية التي آمل أن تجدها مفيدة ، بالإضافة إلى المكونات الإضافية المجانية التي يمكنك استخدامها.

1. إخفاء الأسعار للمستخدمين الضيوف

لنبدأ بواحد سهل. يمكنك القيام بذلك باستخدام مرشحات WooCommerce. أولاً ، لنستخدم woocommerce_get_price_html لتغيير السعر المعروض إلى “تسجيل الدخول لعرض الأسعار”.

add_filter( 'woocommerce_get_price_html', 'b2bking_hide_prices_guest_users', 10, 2 );
 
function b2bking_hide_prices_guest_users( $price, $product ){
if ( ! is_user_logged_in() ){
   return esc_html__( 'Login to view prices', 'your-plugin-text-domain' );
} else {
   return $price;
}
}

بمجرد القيام بذلك ، لن تظهر الأسعار بعد ذلك وسيتم استبدالها بالنص الخاص بنا. هذا لا يكفي ، حيث لا يزال بإمكان المستخدم إضافة هذه المنتجات إلى سلة التسوق ومعرفة سعرها. يتم توفير حل لنا من خلال مرشح woocommerce_is_purchasable المسمى بشكل مناسب .

add_filter( 'woocommerce_is_purchasable', 'b2bking_disable_purchasable_guest_users' );
 
function b2bking_disable_purchasable_guest_users( $purchasable ){
   if ( ! is_user_logged_in() ){
      return false;
   } else {
      return $purchasable;
   }
}

بعد إضافة هذا ، يجب ألا تكون المنتجات قابلة للشراء بواسطة المستخدمين الضيوف ولن يكون الزر “إضافة إلى سلة التسوق” متاحًا بعد الآن. هناك شيء آخر جدير بالذكر وهو أنك قد تواجه مشكلة عند استخدام نماذج بحث AJAX ، اعتمادًا على كيفية إعدادها. هناك طريقة سريعة لإصلاح ذلك وهي إضافة الكود أعلاه إلى الكود الرئيسي الخاص بك والتحقق من AJAX عن طريق تغليف الكود بالداخل :

if ( wp_doing_ajax() ){ 
// code here
}

النتيجة النهائية:

إذا كنت مهتمًا ببديل مكون إضافي لأنك لست معتادًا على الترميز ، فإن B2BKing لديه هذه الوظيفة وغيرها من وظائف تقييد وصول الضيف مثل خيار إخفاء موقع الويب تمامًا ، أو إخفاء الأسعار للمنتجات أو الفئات الفردية.

2. تسجيل الأعمال ، أو استمارات تسجيل B2B و B2C منفصلة

ما تريد القيام به هنا هو إضافة حقول مخصصة مثل “اسم الشركة” ، “العنوان” ، “معرف ضريبة القيمة المضافة” ، إلخ.

يمكنك استخدام هذا الرمز لإضافة حقل مخصص لاسم الشركة:

add_action( 'woocommerce_register_form', 'b2bking_custom_registration_field' );
 
function b2bking_custom_registration_field(){
   echo '<label>' . esc_html__( 'Company name', 'your-custom-text-domain' ) . '</label>';
   echo '<input type="text" name="billing_company">';
}

إذا كنت ترغب في مزامنة هذا الحقل مع حقل فواتير WooCommerce لاسم الشركة عند التسجيل ، فيمكنك القيام بذلك عن طريق استخدام رابط woocommerce_created_customer وحفظ اسم الشركة كملف تعريف مستخدم ، باستخدام نفس الحقول التي يستخدمها WooCommerce: billing_first_name ، billing_company ، billing_city ، إلخ:

add_action( 'woocommerce_created_customer', 'b2bking_save_custom_registration_fields' );
 
function b2bking_save_custom_registration_fields( $user_id ) {
$field_value = sanitize_text_field( filter_input( INPUT_POST, 'billing_company' ) ); 
if ( $field_value !== NULL ){
   update_user_meta( $user_id, 'billing_company', $field_value );
}
}

كيف يمكنك إنشاء حقول نموذج B2B و B2C منفصلة؟ يمكنك إضافة حقل “تحديد” للتسجيل بالطريقة الموضحة أعلاه واستخدام القليل من JavaScript لتحديد ما إذا كان المستخدم قد اختار “فردي” أو “شركة”. إظهار أو إخفاء حقول التسجيل مثل اسم الشركة بناءً على ما يختاره المستخدم.

إذا كنت ترغب في تجنب الترميز ، فهناك بعض حلول المكونات الإضافية المجانية لتوسيع التسجيل ، مثل https://وورد بريس.org/plugins/user-registration/ التي تحتوي أيضًا على خيارات لنماذج تسجيل متعددة ، على الرغم من أن إنشاء تسجيل خاص بنظام B2B قد يتطلب القليل من العمل الإضافي من جانبك.

إذا كنت تبحث عن حل متميز ، فإن B2BKing يوفر بعض الرموز القصيرة سهلة الاستخدام والتي يمكنك إضافتها إلى أي صفحة وإنشاء نموذج تسجيل الأعمال .

3. شكل طلب بالجملة

غالبًا ما يعرف عملاء الأعمال ما يريدون تمامًا ، وصولاً إلى رمز التخزين التعريفي ، لذا فإن إضافة نموذج طلب بالجملة إلى موقع الويب الخاص بك يجعل الطلب سريعًا لعملائك ، ويجعلك تبدو محترفًا.

كيف يمكنك إضافة واحد؟ لا يوجد مقتطف رمز سريع يمكنه القيام بذلك ، لذلك أعتقد أن المكون الإضافي هو الحل الأفضل لك.

هناك مكون إضافي مجاني اختبرته شخصيًا ، والذي يبدو ويعمل بشكل رائع: https://وورد بريس.org/plugins/woocommerce-bulk-order-form/

B2BKing لديه أيضًا تطبيق خاص به ، والذي يمكنك رؤيته في الصورة التالية:

4. هيكل أسعار الجملة

السؤال المناسب هنا هو: كيفية إعداد أسعار مختلفة لمستخدمين مختلفين؟ هناك طريقتان للقيام بذلك: تغيير السعر مباشرة ، أو إضافة خصم.

لإضافة خصم سلة التسوق لمستخدم أو فئة من المستخدمين ، استخدم هذا الرمز:

add_action( 'woocommerce_cart_calculate_fees', 'b2bking_cart_discount' );
 
function b2bking_cart_discount( $cart ){
$cart->add_fee( 'B2B Discount', -10 );
}

يستخدم الكود أعلاه بعض الحيلة عن طريق إضافة رسم سلبي ، وهو خصم. الكود أعلاه لا يفعل الكثير ، إنه يضيف فقط خصم 10 دولارات لجميع المستخدمين. دعنا نوسع الكود قليلاً:

function b2bking_cart_discount( $cart ){
   $user_id = get_current_user_id();
   $user_status = get_user_meta( $user_id, 'user_status', true );
   if ( $user_status === 'b2b' ){
      $cart->add_fee( 'B2B Discount', -10 );
   }
}

كيف هذا؟ الآن يتحقق الكود مما إذا كانت الحالة الوصفية للمستخدم هي ” b2b” ويمنح خصمًا فقط لمستخدمي b2b.

كيف يمكنك تعيين حالة التعريف؟ يمكنك تعيين ذلك عند التسجيل باستخدام خطاف woocommerce_created_customer الذي استخدمته أعلاه في قسم المقالة الثاني ، وسطر بسيط من التعليمات البرمجية. تُستخدم الوظيفة update_user_meta لتحديث وإنشاء تعريف المستخدم.

update_user_meta( $user_id, 'user_status', 'b2b' );

ماذا لو كنت تريد تعيين هياكل معقدة بأسعار مختلفة لمنتجات مختلفة لمستخدمين مختلفين؟

يصبح هذا الأمر أكثر تعقيدًا بعض الشيء ولكن يمكنك استخدام نفس المبادئ. في WooCommerce ، يعتبر المنتج “منشورًا” ، ويمكنك تعيين بيانات تعريف النشر له. على سبيل المثال ، يمكنك إضافة تعريف منشور باسم b2b_price ، للحصول على سعر منفصل لمستخدمي b2b. ها هو الرمز.

update_post_meta( $post_id, 'b2b_price', 15 ); // 15 is the price for b2b users

كيف تظهر هذا السعر لمستخدمي B2B فقط؟

add_filter('woocommerce_product_get_price', 'b2bking_fixed_price', 99, 2 );
add_filter('woocommerce_product_get_regular_price', 'b2bking_fixed_price', 99, 2 );
add_filter('woocommerce_product_variation_get_regular_price', 'b2bking_fixed_price', 99, 2 );
add_filter('woocommerce_product_variation_get_price', 'b2bking_fixed_price', 99, 2 );
 
function b2bking_fixed_price( $price, $product ) {
   // check if the user is B2B or not
   $current_user_id = get_current_user_id();
   $current_user_status = get_user_meta( $current_user_id, 'user_status', true );
   if ( $current_user_status !== 'b2b' ){
      // if user is not b2b show the normal price
      return $price;
   } else {
      // get the current product’s price for B2B users
      $current_product_id = $product->get_id();
      $b2b_price = get_post_meta( $current_product_id, 'b2b_price', true );
      return $b2b_price;
   }
}

5. إعداد الإعفاءات الضريبية

هذا أسهل مما تعتقد! هناك وظيفة مفيدة للغاية يمكنك استخدامها في WooCommerce والتي ستفعل ذلك نيابةً عنك وتهتم أيضًا بعرض الأسعار في معظم المواقف: set_is_vat_exempt () . اسم جيد ، صحيح؟

ستعمل هذه الوظيفة على جعلها حتى يرى مستخدمو B2B الأسعار مع اللاحقة “باستثناء الضرائب” ، بينما يرى مستخدمو B2C الأسعار تقول “بما في ذلك الضرائب”.

add_action( 'init', 'b2bking_tax_exemption' );
 
function b2bking_tax_exemption(){
   // first we check if the user is tax exempt
   $tax_exempt = get_user_meta( get_current_user_id(), 'is_tax_exempt', true );
   if ( $tax_exempt === 'exempt' ){
      $customer = WC()->customer;
      $customer->set_is_vat_exempt( true );
   } else {
      // the next line is only necessary if the user’s exempt status changes dynamically, such as based on billing country
      $customer->set_is_vat_exempt( false ); 
   }
}

B2BKing – البرنامج المساعد WooCommerce B2B والبيع بالجملة

آمل أن يكون بعض ما شاركته أعلاه مفيدًا لك. يعد تجهيز WooCommerce بوظائف B2B مهمة معقدة ، ولن أخطئ إذا قررت شراء مكون إضافي ممتاز هو استخدام أفضل لوقتك من كتابة الكود بنفسك 🙂 حقًا ، لن أحكم عليك على الإطلاق.

مع وضع ذلك في الاعتبار ، سأشارك بضع كلمات حول B2BKing. هذا مشروع كنت أعمل عليه وفريقي منذ فترة ، بهدف تحويل WooCommerce إلى حل B2B قادر ، بديل لمنصات SAAS باهظة الثمن.

نعمل باستمرار على تطويره ودعمه كمشروع طويل الأجل ، ولديه حاليًا أكثر من 137 ميزة بما في ذلك تسجيل الأعمال ، والإعفاءات الضريبية ، وقواعد التسعير الديناميكي ، ودعم ضريبة القيمة المضافة ، ونظام المراسلة المدمج ، والمشترين المتعددين على الحساب ، والعروض ، وضع هجين مخصص لـ B2B و B2C ، وأكثر من ذلك بكثير.

هذا الأسبوع ، نحن فخورون باختيار Envato يدويًا ليكون ” البرنامج المساعد المميز لهذا الأسبوع ” وعرضه على الصفحة الأولى لـ CodeCanyon.

نحن نقدم عرضًا توضيحيًا مباشرًا يمكنك اختباره في أي وقت ، سواء الخلفية أو الواجهة الأمامية: عرض مباشر

إذا كان لديك أي أسئلة حول المقالة ، أو حول المكون الإضافي ، أو أردت فقط إلقاء التحية ، فلا تخجل! لا تتردد في التواصل مع مطور البرنامج المساعد الودود في منطقتك.

المنشورات ذات الصلة:

أسعار الجملة لـ WooCommerce: الإضافات والإعداد والنصائح والمقتطفات

WooCommerce: كيفية بناء متجر بيع بالجملة ناجح

WooCommerce: كيفية تمكين وضع الكتالوج؟

WooCommerce: 5 طرق لزيادة تحويلات B2B

WooCommerce: 5 ملحقات ستزيد من تحويلاتك

WooCommerce بالجملة: حلول البرنامج المساعد الكل في واحد

WooCommerce: كيفية تعيين أسعار مختلفة بناءً على دور المستخدم؟

WooCommerce طلب عرض أسعار: لماذا تختار “Product Inquiry Pro”؟

WooCommerce: 6 نصائح حول الضرائب والمحاسبة لتوفير الوقت في موسم الضرائب هذا

WooCommerce: كيفية حساب أسعار المنتجات باستخدام الصيغ المخصصة

توضيح

اي عملية نسخ او اقتباس او ترجمة او نقل تم لاغراض علمية وتدريبية وتعليمية بحته وقد تم انشاء هذا المحتوى بمعرفة خبراء في مجال التقنية اما عن طريق إنشاء او تحرير او نقل او نسخ او اقتباس او ترجمة المحتوى من مصادر خاصة او عامة وكل ذلك ضمن حقوق النشر المتعارف عليها.

اي أخطاء تظهر في المحتوى مهما كان نوعه او تصنيفه يمكنك تحرير رسالة فورية لادارة موثوق لاجل تصحيح هذه الاخطاء، وسنكون شاكرين لك في حال قمت بالتعاون معنا لاجل اصلاح هذه الاخطاء.

أرسل تصحيح

شاركنا رايك وتقييمك للموضوع

{{ reviewsTotal }}{{ options.labels.singularReviewCountLabel }}
{{ reviewsTotal }}{{ options.labels.pluralReviewCountLabel }}
{{ options.labels.newReviewButton }}
{{ userData.canReview.message }}