المحتوى عن 'store'.



مزيد من الخيارات

  • ابحث بالكلمات المفتاحية

    أضف وسومًا وافصل بينها بفواصل ","
  • ابحث باسم الكاتب

نوع المُحتوى


التصنيفات

  • التخطيط وسير العمل
  • التمويل
  • فريق العمل
  • دراسة حالات
  • نصائح وإرشادات
  • التعامل مع العملاء
  • التعهيد الخارجي
  • التجارة الإلكترونية
  • الإدارة والقيادة
  • مقالات ريادة أعمال عامة

التصنيفات

  • PHP
    • Laravel
    • ووردبريس
  • جافاسكريبت
    • Node.js
    • jQuery
    • AngularJS
    • Cordova
  • HTML5
  • CSS
    • Sass
    • إطار عمل Bootstrap
  • SQL
  • سي شارب #C
    • منصة Xamarin
  • بايثون
    • Flask
    • Django
  • لغة روبي
    • إطار العمل Ruby on Rails
  • لغة Go
  • لغة جافا
  • لغة Kotlin
  • برمجة أندرويد
  • لغة Swift
  • لغة R
  • لغة TypeScript
  • سير العمل
    • Git
  • صناعة الألعاب
    • Unity3D
  • مقالات برمجة عامة

التصنيفات

  • تجربة المستخدم
  • الرسوميات
    • إنكسكيب
    • أدوبي إليستريتور
    • كوريل درو
  • التصميم الجرافيكي
    • أدوبي فوتوشوب
    • أدوبي إن ديزاين
    • جيمب
  • التصميم ثلاثي الأبعاد
    • 3Ds Max
    • Blender
  • مقالات تصميم عامة

التصنيفات

  • خواديم
    • الويب HTTP
    • قواعد البيانات
    • البريد الإلكتروني
    • DNS
    • Samba
  • الحوسبة السّحابية
    • Docker
  • إدارة الإعدادات والنّشر
    • Chef
    • Puppet
    • Ansible
  • لينكس
  • FreeBSD
  • حماية
    • الجدران النارية
    • VPN
    • SSH
  • مقالات DevOps عامة

التصنيفات

  • التسويق بالأداء
    • أدوات تحليل الزوار
  • تهيئة محركات البحث SEO
  • الشبكات الاجتماعية
  • التسويق بالبريد الالكتروني
  • التسويق الضمني
  • التسويق بالرسائل النصية القصيرة
  • استسراع النمو
  • المبيعات
  • تجارب ونصائح

التصنيفات

  • إدارة مالية
  • الإنتاجية
  • تجارب
  • مشاريع جانبية
  • التعامل مع العملاء
  • الحفاظ على الصحة
  • التسويق الذاتي
  • مقالات عمل حر عامة

التصنيفات

  • الإنتاجية وسير العمل
    • مايكروسوفت أوفيس
    • ليبر أوفيس
    • جوجل درايف
    • شيربوينت
    • Evernote
    • Trello
  • تطبيقات الويب
    • ووردبريس
    • ماجنتو
  • أندرويد
  • iOS
  • macOS
  • ويندوز

التصنيفات

  • شهادات سيسكو
    • CCNA
  • شهادات مايكروسوفت
  • شهادات Amazon Web Services
  • شهادات ريدهات
    • RHCSA
  • شهادات CompTIA
  • مقالات عامة

أسئلة وأجوبة

  • الأقسام
    • أسئلة ريادة الأعمال
    • أسئلة العمل الحر
    • أسئلة التسويق والمبيعات
    • أسئلة البرمجة
    • أسئلة التصميم
    • أسئلة DevOps
    • أسئلة البرامج والتطبيقات
    • أسئلة الشهادات المتخصصة

التصنيفات

  • ريادة الأعمال
  • العمل الحر
  • التسويق والمبيعات
  • البرمجة
  • التصميم
  • DevOps

تمّ العثور على 17 نتائج

  1. سنبدأ في هذا الدرس من سلسلة إعداد واستخدام ماجنتو بالتعرف على كيفيّة إضافة المنتجات البسيطة إلى ماجنتو. حيث سنعمل على اتباع الخطوات اللازمة لإضافة منتج بسيط. سيكون هذا الدرس كحجر بناء لإضافة العديد من أنواع المنتجات الأخرى -كما سنرى في درس لاحق- وذلك لأنّ المنتج البسيط كما وسبق أن أوضحنا سابقًا، يدخل في تكوين العديد من أنواع المنتجات الأخرى التي يدعمها ماجنتو. من المفيد أن تكون قد اطلعت على الدرس الخاص بأنواع المنتجات في ماجنتو. بدايةً وقبل إضافة أي منتج، يتوجّب علينا إضافة فئة (صنف) Category واحدة على الأقل يتبع لها المنتج. سنتحدّث في البداية عن كيفيّة إضافة مثل هذه الفئات، ثم ننتقل إلى عمليّة إضافة المنتجات. إنشاء فئة Category جديدة انتقل إلى القائمة الجانبيّة الخاصّة بمدير النظام واختر منها PRODUCTS، ومن القائمة الصغيرة التي ستظهر اختر الفئات Categories. بعد أن تظهر الصفحة المطلوبة انقر الزر Add Subcategory الموجود في أعلى ويسار الصفحة وذلك لإضافة فئة فرعية إلى الفئة الافتراضية Default Categroy. لتظهر بعد ذلك الصفحة المسؤولة عن إضافة فئة جديدة. كما في الشكل التالي: اختر الاسم T-Shirts للحقل Category Name. لاحظ معي وجود العديد من الخيارات المتعلّقة بالفئة المراد إضافتها. والتي تتعلّق بالمحتوى وبكيفيّة الظهور وبالتصميم، وحتى بالمنتجات التابعة لها. سنكتفي بكتابة اسم هذه الفئة حاليًا. انقر الآن زر Save البرتقالي اللون في الجهة العليا اليمنى من الصفحة. إنشاء منتج بسيط Simple Product بعد إضافة الفئة السابقة يمكننا الآن إضافة منتج بسيط، وذلك بالانتقال إلى القائمة الجانبيّة الخاصّة بمدير النظام، واختيار PRODUCTS، ومن القائمة الصغيرة التي ستظهر سنختر Catalog. بعد ظهور الصفحة المطلوبة. انقر السهم الصغير الموجود ضمن الزر البرتقالي اللون المسمى Add Products (في الجهة اليمنى العليا) لتظهر قائمة صغيرة، اختر منها Simple Product. أي أنّنا نريد إضافة منتج بسيط جديد. ستظهر الصفحة الخاصة بإضافة منتج بسيط. تحتوي هذه الصفحة على العديد من الخيارات المصنّفة والتي تضبط سلوك هذا المنتج. سنعمل على ضبط الحقول العامة التالية لهذا المنتج الجديد: الحقل Product Name سيحمل القيمة Hsoub T-Shirt. الحقل Price سيحمل القيمة 20. الحقل Quantity سيحمل القيمة 50. أمّا بالنسبة للحقل Categories فسنختار من القائمة المنسدلة الفئة التي أنشأناها في الفقرة السابقة وهي T-Shirts. بعد ذلك يمكنك استخدام شريط التمرير للانتقال أسفل الصفحة إلى التصنيف Content الذي يُعبّر عن محتوى الصفحة الخاصّة بهذا المنتج، انقر على المؤشّر الصغير الموجود على يمين هذا التصنيف لنشر محتواه كما يظهر في الشكل التالي: اكتب وصفًا عامًا للمنتج ضمن الحقل Description، ووصفًا مختصرًا له ضمن الحقل Short Description الذي يظهر بعد الحقل السابق (حقل Description): ثم انتقل بعد ذلك باستخدام شريط التمرير إلى الأسفل إلى التصنيف Images And Videos لإضافة صورة أو مقطع فيديو إن أحببت. بعد ذلك انقر زر الحفظ البرتقالي Save الذي يظهر أعلى يمين الصفحة ليتمّ إضافة هذا المنتج البسيط. من الممكن أن تكون قد لاحظت أيضًا الوجود العديد من الخيارات الأخرى التي يمكن ضبطها لهذا المنتج. ولكنّنا وبغرض تبسيط الأمور اعتمدنا على الخيارات الأدنى لإنشائه. زيارة صفحة المتجر لاستعراض المنتج الجديد من الجميل أن نتفقّد الآن صفحة الويب الخاصة بالمتجر لتفقّد الإضافات الجديدة التي عملنا عليها في الفقرات السابقة. افتح لسان تبويب جديد من متصفّح الإنترنت لديك. ثم اكتب العنوان التالي: http://127.0.1.1/magento سيؤدّي ذلك إلى الانتقال إلى الصفحة الرئيسيّة للموقع، والتي من المفترض أن تظهر للعميل عند زيارته للموقع بشكل عام. انظر الشكل التالي: من الملفت للنظر بدايةً أنّ الصفحة الرئيسية للموقع فارغة من المحتوى. وهذا أمر طبيعي تمامًا لأنّنا لم نجهّز المحتوى بعد. سنتناول هذا الموضوع في درس لاحق. نلاحظ الآن ظهور الفئة الجديدة T-Shirts على شريط الفئات في الأعلى. إذا حاولت نقر هذه الفئة، سينتقل بك المتصفّح إلى صفحة المنتجات الخاصة بهذه الفئة. انظر الشكل التالي: لا يوجد حاليًا سوى منتج واحد فقط، وهو Hsoub T-Shirt الذي أضفناه قبل قليل. أنصحك بإضافة المزيد من المنتجات لترى تأثير ذلك. انقر على هذا المنتج الوحيد، لتظهر الصفحة التفصيليّة للمنتج، والتي ستحتوي على جميع المعلومات التي كتبناها مسبقًا حوله. انظر إلى الشكل التالي: يمكننا أيضًا البحث عن المنتج باستخدام ميزة البحث الموجودة في ماجنتو. انتقل إلى الصفحة الرئيسية للمتجر مرّة أخرى. ثم من الزاوية اليمنى العليا ستلاحظ وجود مربّع خاص للبحث ضمن المتجر. اكتب كلمة البحث التي تريدها ولتكن T-Shirts مثلًا، ثم اضغط المفتاح Enter ليبدأ ماجنتو بالبحث وإيجاد المنتجات التي تتعلّق بالفئة T-Shirts. سيكون هناك كما هو واضح منتج واحد فقط حاليًا ضمن نتائج البحث. خلاصة تناولنا في هذا الدرس كيفيّة إنشاء فئة (صنف) Category جديدة للمنتجات في ماجنتو. وكيفيّة إضافة منتج بسيط Simple Product لهذه الفئة. يُعتبر المنتج البسيط كما أشرنا من قبل المنتج الأساسي الذي تُبنى عليه العديد من أنواع المنتجات الأخرى. سنتابع العمل على إضافة أنواع منتجات أخرى تعتمد في تكوينها على المنتج البسيط، وذلك في الدرس التالي.
  2. سنتابع في هذا الدرس من سلسلة إعداد ماجنتو ما بدأناه في الدرس السابق في عمليّة ضبط بعض الإعدادات الأساسيّة اللازمة للبدء بتشغيل واستخدام ماجنتو. سنعمل في هذا الدرس على ضبط حسابات البريد الإلكتروني القياسيّة التي سيتعامل معها ماجنتو، وأيضًا سنعمل على ضبط العملات المستخدمة، وتحديد أسعار الصرف الخاصّة بها، بالإضافة إلى ضبط موقع العمل الخاص بك. كما جرت به العادة من قبل، عليك أولًا تسجيل الدخول كمدير للنظام عن طريق الرابط http://ubuntu/magento/admin . حسابات البريد الإلكتروني للمتجر Store Email Addresses من الممكن استخدام خمسة عناوين بريد إلكتروني مختلفة بحيث يمثّل كل منها وظيفة مختلفة أو قسم مختلف، بحيث تتوزّع على الشكل التالي: جهة الاتصال العامّة General Contact. ممثّل المبيعات Sales Representative. الدعم الفني Customer Support. بالإضافة إلى بريدين إلكترونيين يمكن تخصيصهما بالشكل الذي تراه مناسبًا. ومن الجدير ذكره أنّه من الممكن ربط أيّ عنوان بريد إلكتروني من العناوين السابقة برسائل مؤتمتة بحيث تظهر كما لو أنّ مرسل هذه الرسائل قد أرسلها من المتجر. قبل أن نبدأ بعمليّة ضبط البريد الإلكتروني، من الضروري تجهيز عناوين بريد إلكتروني خاصّة باسم النطاق الذي تستخدمه. فمثًلا إذا كان عنوان متجرك على الإنترنت هو www.example.com فيجب تحضير عناوين بريد إلكتروني مثل sales@example.com و support@example.com وغيرها. ومن الممكن أن تحصل على مثل هذه العناوين بمراجعة خطة الاستضافة لديك، أو بمراجعة مدير النظام في حال كنت تستضيف ماجنتو على خادوم خاص، مع ملاحظة أنّه من الممكن توفير خدمة مدفوعة لقاء مثل هذه العناوين، وهي بالتأكيد لا تكلّف كثيرًا في حال تعذّر عليك تأمين مثل عناوين البريد الإلكتروني السابقة لسبب أو لآخر (انظر مثلًا إلى هذه الخدمة). يمكننا الآن ضبط عناوين البريد الإلكتروني الخاصّة بالمتجر وذلك باتباع الخطوات التالية: 1- من القائمة الجانبيّة الخاصّة بمدير النظام والتي تظهر في الجهة اليسرى انقر STORES. ستظهر نافذة منبثقة اختر منها التكوين Configuration (تحت بند الإعدادات Settings). 2- اختر من قائمة الخيارات الجانبيّة عناوين البريد الإلكتروني للمتجر Store Email Addresses وهي تحت البند GENERAL. 3- انشر قسم جهة الاتصال العامّة General Contact كما في الشكل التالي: أدخل في حقل اسم المرسل Sender Name اسم الشخص الذي ترغب أن يظهر كمُرسل للرسالة، بحيث يمثّل جهة الاتصال العامّة. أمّا في الحقل Sender Email فأدخل عنوان البريد الإلكتروني للمرسل. كرّر هذه الخطوة من أجل البريد الإلكتروني لممثّل المبيعات Sales Representative، وأيضًا من أجل البريد الإلكتروني للدعم الفني Customer Support، بالإضافة إلى البريدين الإلكترونيين اللذين يمكن تخصيصهما Custom Email 1 و Custom Email 2، وذلك بنشر البند الموافق لكلّ منها. 4- بعد الانتهاء انقر الزر Save Config الموجود في الأعلى. العملات Currencies يدعم ماجنتو استخدام عدد كبير من العملات، حيث يمكنك قبول التسديد بطيف واسع من هذه العملات إن أحببت ذلك. يوجد قسم خاص لإعداد هذه العملات يظهر في الشكل التالي: سنبدأ بإعداد العملات من خلال الخطوات التالية: 1- تأكّد أنّك في صفحة ضبط Configuration ماجنتو، فإن لم تكن كذلك، فمن القائمة الجانبيّة الخاصّة بمدير النظام والتي تظهر في الجهة اليسرى انقر STORES. ستظهر نافذة منبثقة اختر منها ضبط Configuration (تحت بند الإعدادات Settings). 2- اختر من قائمة الخيارات الجانبيّة إعداد العملة Currency Setup الموجود تحت البند GENERAL كما هو واضح من الشكل السابق. 3- انشر بند خيارات العملة Currency Options، لتحصل على شكل شبيه بما يلي: حدّد العملة الرئيسيّة Base Currency التي تودّ استخدامها في التعاملات الماليّة في متجرك. ثمّ حدّد عملة العرض الافتراضيّة Default Display Currency التي تودّ استخدامها لعرض أسعار منتجاتك. أمّا بالنسبة لقائمة العملات المسموحة Allowed Currencies، فمن هنا يمكنك اختيار جميع العملات التي تقبل التعامل بها في متجرك. احرص على اختيار العملة الرئيسيّة، ويمكنك بالطبع اختيار عملات أخرى بالضغط على زر Ctrl أثناء النقر على العملات في القائمة. بعد أن تفرغ يمكنك نقر زر حفظ الإعدادات Save Config. بعد نقر هذا الزر من الممكن أن تحصل على رسالة تطلب منك الانتقال إلى إدارة الذاكرة المخبئيّة Cache Management لإجراء عمليّة تحديث refresh. أغلق هذه الرسالة الآن، سنعمل على حل هذه المشكلة فيما بعد. 4- انتقل إلى قائمة الخيارات الجانبيّة واختر منها CATALOG ثم انقر على البند Catalog لتظهر أمامك الصفحة الموافقة. استخدم شريط التمرير للوصول إلى البند Price. انشر هذا البند وتأكّد من أنّ Catalog Price Scope قد تمّ ضبطه ليكون Global كما في الشكل التالي: انقر زر حفظ الإعدادات Save Config إذا كان ذلك ضروريًّا ثم يمكنك عندها الانتقال إلى صفحة إدارة الذاكرة المخبئيّة ومعالجة المشكلة التي حصلنا عليها قبل قليل، وذلك كما فعلنا في هذا الدرس (انظر الملاحظة آخر الدرس). 5- سنعمل الآن على تحديث نسب التحويل بين العملات، وذلك بالانتقال مجدّدًا إلى القائمة الجانبيّة الخاصّة بمدير النظام والتي تظهر في الجهة اليسرى. انقر STORES، وبعد ذلك اختر نسب التحويل Currency Rates تحت بند العملات Currency. بعد ذلك ومن الصفحة التي ستظهر، انقر على نسبة التحويل التي ترغب بتعديلها، ثم أدخل النسبة المطلوبة. وبعد الانتهاء عليك نقر زر Save Currency Rates. انظر إلى الشكل التالي مع ملاحظة أنّني قد أضفت عملة أخرى وهي الريال السعودي SAR كعملة مسموح التعامل بها، بالإضافة إلى الدولار الأمريكي: لاحظ وجود زر صغير اسمه Import ويعني استيراد. في حال نقرت على هذا الزر سيعمل ماجنتو على جلب سعر الصّرف الخاص بجميع العملات المسموحة لديك من مزوّد الخدمة الموجود فوق زر Import تمامًا، وهو في حالتنا: Yahoo Finance Exchange. 6- بعد الانتهاء يمكنك نقر الزر Save Currency Rates. موقع الشّركة Merchant Location يُعتبر موقع الشّركة ضروريًّا لإحدى مزايا ماجنتو وهي طرق الدفع Payment Methods والتي سنتحدّث عنها في درس لاحق بشكل موسّع أكثر. يُعتبر ضبط موقع الشّركة مهمّة سهلة للغاية فكلّ ما عليك فعله هو اتباع الخطوات البسيطة التالية: سنعود إلى صفحة الضّبط الخاصّة بماجنتو، وذلك من خلال نقر البند STORES الموجود ضمن القائمة الجانبيّة الخاصّة بمدير النظام والتي تظهر في الجهة اليسرى. ستظهر نافذة منبثقة اختر منها الضّبط Configuration (تحت بند الإعدادات Settings). اختر من قائمة الخيارات الجانبيّة طرق الدفع Payment Methods وهي موجودة تحت البند SALES (استخدم شريط التمرير للوصول للأسفل). انشر موقع الشّركة Merchant Location، لتحصل على شكل شبيه بما يلي: اختر الدولة التي تريدها من قائمة Merchant Country. انقر زر حفظ الإعدادات Save Config. الخلاصة تناولنا في هذا الدرس كيفيّة ضبط بقية الإعدادات والخيارات اللازمة للتشغيل الأساسي لماجنتو، حيث تحدّثنا عن كيفيّة ضبط عناوين البريد الإلكتروني Store Email Addresses، والعملات Currencies، وموقع الشّركة Merchant Location. ورغم أنّه توجد العديد من الخيارات الأخرى، إلّا أنّنا سنتناول ما نحتاجه منها تباعًا أثناء تقدّمنا في دروس هذه السلسلة.
  3. قبل أن تبدأ بإضافة الأصناف والمنتجات، وقبل أن تشرع عمومًا ببدء نشاطك التجاري، ينبغي أن تقوم بتجهيز الإعدادات الأساسيّة لمتجرك الإلكتروني، والتي تشتمل على معلومات وبيانات خاصّة بهذا المتجر. كمثال على ذلك البيانات المتعلّقة باسم المتجر وعنوانه ورقم الهاتف والبريد الإلكتروني. ستظهر هذه المعلومات على جميع رسائل البريد الإلكتروني الصادر من ماجنتو، وكذلك على الفواتير وعلى التعاملات المالية مع زبائنك بشكل عام. سنتحدّث في هذا الدرس وفي الدرس التالي من سلسلة إعداد ماجنتو عن كيفيّة ضبط مثل هذه الإعدادات بالشكل الصحيح. عليك أولًا تسجيل الدخول كمدير للنظام عن طريق الرابط http://ubuntu/magento/admin كما مرّ معنا. بعد ذلك ومن القائمة الجانبيّة الخاصّة بمدير النظام والتي تظهر في الجهة اليسرى انقر STORES. ستظهر نافذة منبثقة اختر منها التكوين Configuration (تحت بند الإعدادات Settings). وبعد أن تظهر الصفحة المطلوبة اختر من قائمة الخيارات الجانبيّة General (تحت البند GENERAL أيضًا). بيانات المتجر الأساسيّة Store Information تشتمل هذه البيانات على اسم المتجر ورقم الهاتف وساعات العمل والدولة والمدينة التي يتبع لها. وأيضًا على العنوان التفصيلي له. كما يوجد حقل يُعبّر عن معرّف ضريبة القيمة المُضافة VAT التي يتم تطبيقها في العديد من دول العالم، مثل دول الاتحاد الأوربي والولايات المتحدة وغيرها. انظر الشكل التالي: اتبع الخطوات التالية لتتمكن من ضبط هذه الإعدادات: انشر بند بيانات المتجر Store Information في الأعلى وابدأ بتعبئة البيانات على الشكل التالي: اسم المتجر Store Name الذي سيُستَخدم في جميع التعاملات. رقم الهاتف الخاص بالمتجر Store Phone Number. بالنسبة لحقل ساعات العمل Store Hours of Operation أدخل ساعات العمل في المتجر مثل: "من السبت إلى الخميس 08:00 – 16:00"، وذلك في حال كان المتجر الخاص بك له وجود فيزيائي حقيقي. أمّا في حال كان متجرك الكترونيًّا فحسب ويمكنك تلقي طلبات الشراء والتعاملات الخاصة بها في أيّ وقت فلا بأس من ترك هذا الحقل فارغًا. اختر الدولة Country التي يعمل ضمنها متجرك. اختر المنطقة – المدينة Region/State. ثم يمكنك إدخال العنوان الخاص بك على حقلي العنوان المتتاليين: Store Address و Store Address Line 2. إذا كنت تمتلك رقم VAT الذي تحدثنا عنه قبل قليل فيمكنك إدخاله ضمن الحقل VAT Number، كما ويمكنك التحقّق من صحته بالضغط على زر التحقّق Validate VAT Number في الأسفل مباشرةً. عند الانتهاء انقر زر الحفظ Save Config الموجود في الزاوية العليا اليمنى. الخيارات الإقليميّة Locale Options يمكن من خلال الخيارات الإقليميّة تحديد إعدادات مثل لغة البلد والمنطقة الزمنيّة وأيّام العمل الخاصّة بالمنطقة أو البلد الذي تعمل فيه. انظر الشكل التالي: لضبط هذه الإعدادات عليك بالخطوات التالية: انشر بند الخيارات الإقليميّة Locale Options. اختر المنطقة الزمنية Timezone الخاصّة بك من القائمة، ثم اختر من القائمة Locale البلد واللغة الخاصّة به. وإذا أردت تغيير الإعدادات الافتراضيّة الموجودة بجوار كلّ من واحدة الأوزان Weight Unit واليوم الأوّل بالأسبوع First Day of the Week وأيّام العطلة الأسبوعيّة Weekend Days فعليك إزالة علامة الاختيار من صناديق الاختيار: Use system value الموجودة على يمين كلّ منها. وإلّا سيستخدم ماجنتو الإعدادات الافتراضيّة. عند الانتهاء انقر زر الحفظ Save Config الموجود في الزاوية العليا اليمنى. خيارات الدول Country Options يمكن من خلال هذا القسم تحديد الدولة التي يتبع لها هذا المتجر بصورة عامة. بالإضافة إلى خيارات مثل ضرورة تحديد الرمز البريد Zip/Postal لبعض الدول، وعدم ضرورته بالنسبة لدول أخرى، كما يمكن تحديد الدول التي تقبل البيع إلى الزبائن القادمين منها، كما يمكن تحديد الدول التي ترغب اعتبارها من دول الاتحاد الأوروبي European Union Countries، أو بمعنى آخر ترغب بمعاملتها بنفس معاملة دول الاتحاد. انظر إلى الشكل التالي: يمكنك ضبط الإعدادات السابقة من خلال الخطوات البسيطة التالية: انشر البند خيارات الدول Country Options، ثم قُم بما يلي: اختر الدولة الافتراضيّة Default Country حيث يوجد عملك. من قائمة الدول المسموحة Allow Countries اختر جميع الدول التي ترغب باستقبال طلبات الشراء منها فقط. لاحظ أنّه بشكل افتراضيّ ستكون جميع الدول مختارة، لذلك ستحتاج أولًا إلى الغاء الاختيار من صندوق الاختيار User system value المجاور إذا رغبت باختيار دول محدّدة. يمكنك اختيار أكثر من دولة بنفس الوقت اضغط المفتاح Ctrl بينما تنقر على الدول التي ترغب بها. توجد قائمة اسمها Zip/Postal Code is Optional for وهي مفيدة في تحديد الدول التي لا يحتاج مواطنوها (الزبائن) إلى أن يكون الرمز البريدي جزءًا من العنوان Address الخاص بهم عند الشراء. بالنسبة لقائمة دول الاتحاد الأوربي European Union Countries، يمكنك اختيار أي دولة كي تعاملها كدول الاتحاد الأوروبي. لاحظ بأنّك جميع دول الاتحاد الأوروبي مختارة بشكل افتراضي. القائمة الأخيرة Top Destinations تمثّل الدول الرئيسيّة التي تستهدفها بمبيعاتك. عند الانتهاء انقر زر الحفظ Save Config الموجود في الزاوية العليا اليمنى. خيارات المدن State Options يختلف معنى كلمة State باختلاف الدول. فهناك من يعتبرها ولاية، أو محافظة، أو حتى مجرّد مدينة. تبرز الحاجة إلى وضع خيارات للمدن، في أنّ بعض الدول تتطلّب أن يكون اسم المدينة كجزء من عنوان الشخص، في حين أنّ دولًا أخرى لا تتطلّب ذلك. لهذا السبب يمنح ماجنتو الخيار في إلزام الزبون بذكر المدينة (الولاية – المحافظة) أثناء عمليّة الشراء، أو أن يُعفى من ذلك إذا كانت الدولة التي قَدِم منها لا تتطلّب ذلك. انظر إلى الشكل التالي: لضبط خيارات المدن اتبع الخطوات البسيطة التالية: انشر البند State Options ثم نفّذ ما يلي: من قائمة State is required اختر كل دولة يكون ذكر المدينة (الولاية – المحافظة) ضروريًّا. ويمكنك بالطبع اختيار أكثر من دولة بضغط المفتاح Ctrl أثناء النقر. اضبط القائمة المنسدلة Allow to Choose State if It is Optional for Country لإتاحة الإمكانيّة لاختيار المدينة إذا كانت غير ضروريّة بالنسبة للدولة، وأحب الزبون أن يُحدّد مدينته رغم ذلك. عند الانتهاء انقر زر الحفظ Save Config الموجود في الزاوية العليا اليمنى. الخلاصة تناولنا في هذا الدرس كيفيّة ضبط بعض الإعدادات والخيارات اللازمة لتشغيل ماجنتو بالشكل الصحيح، وذلك من خلال ضبط بيانات المتجر الأساسيّة، والخيارات الإقليميّة، وخيارات الدول، وخيارات المدن. سنكمل عمليّة الضبط هذه في الدرس القادم حيث سنتعرّف على كيفيّة ضبط إعدادات البريد الإلكتروني وموقع العمل والعملات.
  4. سنكمل مسيرتنا في السلسلة التعليميّة حول ماجنتو. فبعدما تعلّمنا في الدرس السابق كيفية تنصيب وتجهيز ماجنتو على حاسوب يشغّل نظام التشغيل Ubuntu، حان الوقت الآن لنتعرّف على أنواع المنتجات التي يدعمها ماجنتو. يدعم ماجنتو في الواقع ستة أنواع من المنتجات، قد لا يتطلّب عملك التعامل معها جميعًا، ولكن من الضروري أن تتعرّف عليها وتفهم مميّزاتها بشكل جيّد بحيث تختار ما يناسبك منها. هذه الأنواع هي: المنتج البسيط Simple Product. المنتج المجموعة Grouped Product. المنتج القابل للضبط Configurable Product. المنتج الافتراضي Virtual Product. المنتج الحزمة Bundled Product. المنتج القابل للتنزيل Downloadable Product. سنتحدث قليلًا عن كلّ منتج مع ضرب أمثلة على ذلك. ثمّ نتحدّث عن موضوع مهم مشترك بين جميع أنواع المنتجات، ألا وهو سمات المنتج product attributes. المنتج البسيط Simple Product وكما يوحي الاسم، فهو منتج منفرد بنفسه، يمكن بيعه بشكل منفرد، أو كجزء من مجموعة منتجات. من الممكن أحيانًا أن يرافق المنتج البسيط مجموعة من الخيارات. حين ذلك يمكن أن نسميه بالمنتج المركّب. كمثال عن المنتج البسيط، يمكن اعتبار عدسة كاميرا تصوير رقميّة كمنتج بسيط. المنتج المجموعة Grouped Product بالنسبة للمنتج المجموعة فهو عبارة عن مجموعة من المنتجات البسيطة التي تُباع دفعة واحدة، وعادةً ما تكون هناك علاقة بين المنتجات في هذه المجموعة، ومن الممكن أيضًا أن يكون هناك عرض تخفيض في السعر عليها. كمثال على ذلك يمكن اعتبار المنتجات البسيطة التالية كمنتج مجموعة: عدسة كاميرا رقميّة، وكاميرا رقميّة، وبطاقة تخزين. المنتج القابل للضبط Configurable Product يبدو المنتج القابل للضبط كأنّه منتج بسيط ولكن مع قائمة تحوي خيارات مختلفة لكلّ متغيّر من متغيرات هذا المنتج. فمثًلا القميص المسمّى T-Shirt الذي يحمل علامةً ما، له متغيرين (سمتين) أساسيّين: اللون والقياس. بالنسبة للّون من الممكن أن تكون هناك قائمة بالألوان المتاحة لهذا القميص، وبالنسبة للقياس فتكون هناك قائمة أخرى كذلك بالقياسات المتوفّرة لهذا القميص. المهم في الموضوع أنّ أيّ تغيير في أيّ خيار من الخيارات المتوفّرة في القائمتين السابقتين، سيؤدّي إلى منتج "بسيط" مستقل تمامًا ضمن المخزون inventory. المنتج الافتراضي Virtual Product المنتج الافتراضي هو منتج ليس له وجود من الناحية الفيزيائيّة ولا يمكن شحنه كما في المنتجات السابقة. قد يكون هذا المنتج عبارة عن خدمة، أو عضوية في أحد المواقع مثلًا، أو قد يكون كفالة، أو حتى اشتراك، وغيرها من المنتجات ذات الطبيعة غير الماديّة. يمكن أن تُباع المنتجات الافتراضيّة بشكل منفصل، أو أن تكون مضمّنة كجزء من منتج مجموعة Grouped Product أو منتج حزمة Bundle Product. المنتج الحزمة Bundled Product لاحظنا أنّ المنتج المجموعة لا يُعطي المستخدم أيّ خيار حول المنتجات التي يوفرها. فإمّا أن تشتري المجموعة كلّها بسعر خاص أو لا. ففي المثال الذي أوردناه قبل قليل، كانت المجموعة عبارة عن عدسة كاميرا رقميّة، وكاميرا رقميّة، وبطاقة تخزين. لا يمكن للمشتري اختيار أيّ جزءٍ منها على حدة حتى ولو كان ليس بحاجة إليها جميعها. بالنسبة للمنتج الحزمة فهو يسمح للمشتري ببناء المجموعة الخاصة به باستخدام خيارات متعدّدة، ففي مثال الكاميرا وملحقاتها، من الممكن أن يبني المشتري منتج حزمة مكوّن من كاميرا وعدسة وحقيبة خاصّة بالكاميرا دون بطاقة التخزين مثلًا. وفي هذه الحالة من الممكن أيضًا أن نجري له حسمًا على هذا المنتج الحزمة الذي قام بتصميمه شخصيًّا وذلك حسب معايير محدّدة يمكن ضبطها. المنتج القابل للتنزيل Downloadable Product المنتج القابل للتنزيل هو أيّ منتج يمكن تسليمه كملف، مثل كتاب إلكتروني أو ملف صوتي أو ملف فيديو أو حتى تطبيق برمجي. كما يمكنك توفير نسخة عرض من هذا المنتج sample product كون أنّ عمليّة التنزيل لا تتم إلّا بعد دفع ثمن المنتج. تكون نسخة العرض عبارة عن جزء من كتاب، أو جزء من ملف صوتي، أو نسخة تجريبيّة من تطبيق بحيث تكون محدودة الإمكانيّات. من الممكن في ماجنتو أن يتمّ ضبط المنتجات القابلة للتنزيل بحيث تطلب من المستخدم أن يسجّل الدخول في الموقع، ومن ثمّ ترسل له رابط التحميل إلى بريده الإلكتروني على سبيل المثال. سمات منتج Product Attributes يعطينا ماجنتو مرونة عالية في ضبط المنتجات وسماتها. فمن الممكن مثلًا أن يكون لمنتجٍ ما سمات مثل اللون Color والحجم Size والوزن Weight وغيرها الكثير. يسمح ماجنتو بإسناد مثل هذه السمات إلى المنتجات عند إنشاءها. كما يسمح لنا بإنشاء سمات جديدة قد لا تكون موجودة أصلًا في ماجنتو. لتوضيح هذه الفكرة سنعمل على إضافة سمة جديدة اسمها نوع التغليف Packing Kind والتي تعبّر عن كيفيّة تغليف منتج ما: تغليف عادي Normal أم تغليف هدية Gift. افتح متصفّح الويب ثم انتقل إلى صفحة مدير النظام في ماجنتو: http://ubuntu/magento/admin. سجّل دخولك بحساب مدير النظام الذي أنشأته عند تنصيب ماجنتو لتصل بعدها إلى الصفحة الرئيسيّة Dashboard كما في الشكل التالي: من القائمة اليسرى، انقر STORES فتظهر لك نافذة جانبيّة صغيرة اختر منها البند Product تحت التصنيف Attributes. انظر الشكل التالي: سينقلك ذلك إلى جميع السمات attributes الخاصة بمنتجات هذا المتجر. كما في الشكل التالي: انقر الزر Add New Attribute ذو اللون البرتقالي الذي يظهر في الأعلى كما في الشكل السابق، وذلك لإضافة سمة جديدة. اعمل على تتبّع الخطوات التي ستظهر في الشكل التالي لإضافة سمة ستظهر بشكل قائمة منسدلة Dropdown وتحوي خيارين: عادي Normal وهدية Gift: لاحظ أنّه في الخطوة 1 اخترنا اسم لهذه السمة، وفي الخطوة 2 اخترنا القائمة المنسدلة Dropdown ليكون شكل السمة عند الإظهار. في الخطوة 3 حدّدنا أنّها سمة إلزامية وليست اختيارية. أمّا بالنسبة للعناصر التي ستظهر في القائمة فعليك اتّباع الخطوة 4 في النقر على زر إضافة خيار (عنصر) Add Option إلى القائمة ثم الخطوة 5 (لا تنسى نقر صندوق الاختيار بجوار اسم Normal ليكون هو الخيار الافتراضي)، ثم تنقر مرة أخرى على الزر Add Option ثم الخطوة 6 لإضافة الخيار (العنصر) الثاني. أخيرًا يمكننا حفظ هذه السمة بالنقر على الزر Save Attribute (الخطوة 7) في الأعلى. نكون قد انتهينا بذلك من إضافة هذه السمة. سنعود مجدّدا إلى الحديث عن السمات، عندما نبدأ بإضافة المنتجات في الدروس اللاحقة. ملاحظة في بعض الأحيان وبعد إضافة سمة جديدة قد تظهر لك رسالة تخبرك بوجوب الانتقال إلى إدارة الذاكرة المخبئيّة Cache Management لإجراء عمليّة تحديث refresh. انظر الشكل التالي: في هذه الحالة يمكنك النقر على رابط Cache Management الذي يظهر في الشكل السابق للانتقال إلى المكان المطلوب، ومن ثمّ تنقر الزر Submit لإجراء هذا التحديث كما في الشكل التالي: الخلاصة تعرّفنا في هذا الدرس على أنواع المنتجات التي يدعمها ماجنتو، كما تعرّفنا على مفهوم سمات attributes منتج وعملنا على إنشاء سمة بسيطة يمكن ربطها بأيّ منتج فيما بعد. يُعتبر التمييز بين أنواع المنتجات، واختيار ما هو مناسب للعمل التجاري أمرًا مهمًّا. سنتابع عملنا في هذه السلسلة، وسنتعرّف على في الدرس القادم على كيفيّة إعداد الأصناف Categories والمنتجات Products في ماجنتو.
  5. من الأمور التي يجب أن تعرفها حول أبعاد الصور في WooCommerce هي أنّ CSS الافتراضي لـ WooCommerce والعديد من القوالب تحدّد أبعاد صور المنتجات لضمان اتساق التخطيط عبر الأجهزة المختلفة. تؤثر الأبعاد التي تحددها في صفحة إعدادات المنتجات في WooCommerce (راجع درس ضبط إعدادات المنتجات) على حجم الصور الذي يستخدمه القالب عند عرض صور المنتج. حيث لا تغيّر القوالب الحجم الذي تُعرض به الصور، وذلك يمكن أن يؤدي إلى تشويه الصورة وتمويهها عندما تكون إعداداتك غير كافية (أي صغيرة جدًا بالنسبة للحجم الذي يستخدمه القالب لعرض الصور). ألقِ نظرة على المخطط أدناه لمزيد من التوضيح: معالجة تشوه الصور سنقوم بمعالجة مشكلة تشوّه افتراضية كوسيلة للتوضيح. قبل أن تبدأ، تأكد من أن تكون أحجام الصور التي ترفعها كبيرة كفاية. يمكنك استخدام حجم 800 × 800 فما فوق، فهو يصلح لأغلب القوالب. أنواع الصور تستخدم المصطلحات الثلاثة التالية لتصنيف الصور على WooCommerce: Single Product Image: وهي صورة المنتج ذات الحجم الأكبر والتي تُعرض على صفحة تفاصيل المنتج. Catalog Images: وهي الصور ذات الحجم المتوسط التي تُستخدم في قوائم المنتجات المختلفة. مثل الفئات categories، المنتجات ذات الصلة related products، منتجات الارتقاء بالصفقة up-sells، منتجات البيع المتقاطع cross-sells، إلخ. Product Thumbnails: وهي الصور ذات الحجم الأصغر التي تستخدم في معارض المنتج مثل صفحة تفاصيل المنتج (تحت الصورة المميزة للمنتج) ، في السلة، وعلى الودجات. يمكنك تحديد أبعاد هذه الصور بالذهاب إلى: WooCommerce > Settings > Products > Display تعرف على حجم عرض الصور على قالبك يحدد القالب الذي اخترته الحجم الذي تُعرض به الصور عليه، لذلك يجب أن تعرف الأبعاد التي يستخدمها القالب لعرض الصور. صورة الكتالوج Catalog Image حدد المكان الذي يعرض فيه القالب صور الكتالوج بأكبر حجم. في أغلب الحالات يكون هذا المكان هو الصفحة الرئيسية للمتجر؛ لكن قد يختلف المكان في بعض القوالب. على سبيل المثال تُعرض صور الكتالوج بأكبر حجمها في منطقة قائمة المنتجات ذات الصلة related products في قالب Twenty Eleven. ولتحديد الحجم الذي يستخدمه القالب لعرض صور الكتالوج، انقر بزر الفأرة الأيمن على الصورة واختر Inspect إذا كنت تستخدم متصفح Chrome. يمكنك القيام بذلك أيضًا على متصفح Firefox. ستجد أبعاد الصورة ضمن المعلومات التي ستظهر في قسم Element. قم بتسجيل الأبعاد لكي تستخدمها لاحقا. في قالب Storefront الموضح أعلاه (وهو قالب WooCommerce الافتراضي)، أكبر صورة كتالوج تُعرض بحجم 213 × 213 بكسل. الصورة المميزة للمنتج Single Product Image كرر نفس الخطوات أعلاه على صورة المنتج المميزة؛ وهي الصورة الكبيرة التي تُعرض على صفحة تفاصيل المنتج. في قالب Storefront، أكبر صورة منتج تعرض بحجم 298 × 298 بكسل. الصور المصغرة للمنتج Product Thumbnail وهي على الأرجح الصور الأصغر في معرض صور المنتج. كرر نفس الخطوات المذكورة سابقًا لمعرفة أبعادها. في قالب Storefront تُعرض هذه الصور بحجم 43× 43 بكسل. إدخال الأبعاد وتجديد الصور الآن بعد أن أصبحت جميع أبعاد الصور التي تُستخدم في قالبك معلومة، بإمكانك إدخال الأبعاد الجديدة لتتأكد من أن الصور التي ستقوم بإضافتها لاحقًا ستكون بهذا الحجم أو أكبر. اذهب إلى: WooCommerce > Settings > Products > Display وتأكّد من أنّ الحد الأقصى للصور المذكورة مساو للأبعاد التي يعرضها قالبك لهذه الصور، أو أكبر منها. بعد ذلك قم بحفظ التغييرات بالنقر على Save Changes. بذلك عندما تقوم برفع صور جديدة للمنتج ستكون بهذه الأبعاد المحددة في الإعدادات، وستظهر بدون تشوه. ملاحظة: عند تغيير أبعاد الصور في الإعدادات وحفظ التغييرات لا يتم تحديث جميع صور المنتجات التي تم رفعها سابقًا. إذ يحتاج ووردبريس إلى تجديد الصور لتحديث الصور القديمة. بإمكانك استخدام ملحق Regenerate Thumbnails الذي يتيح لك إمكانية تجديد الصور القديمة بعد تغيير أبعادها في الإعدادات. دعم شاشة Retina تحتوي شاشات HiDPI ضعف عدد البكسلات الذي تحتويه الشاشة الاعتيادية. ولعرض الصور بشكل مثالي على شاشات Retina، قم بتعيين إبعاد الصور بضعف الحجم الذي يعرضه القالب الذي تستخدمه. فإذا كان القالب يعرض الصورة بحجم 80 × 80، قم باستخدام الأبعاد 160 × 160. لكن يجب أن تأخذ في الاعتبار أنّ ذلك يؤثر على الأداء، لأن الصور كبيرة الحجم تستغرق وقتًا أطول للتحميل. لذلك فإنّ استخدام ضعف الحجم راجع إلى تفضيلك الشخصي، ويجب أن تقوم بإجراء تحليل لزيارات متجرك قبل اتخاذ القرار. ترجمة -وبتصرّف- للدرس Using appropriate image dimensions to avoid distortion / pixellation.
  6. إنّ اختيار قالب WooCommerce المناسب يمكن أن يكون أمرًا شخصيًا إلى حد كبير، فكما يُقال "الجمال في عين ناظره". لكنّ جمال القالب هو مجرد شيء سطحي، وهناك بعض الأمور التي يجب أن تؤخذ في الاعتبار عند اختيار القالب المناسب لمتجرك. جمالية القالب لا تبحث فقط عن قالب جيّد المظهر، إذ يجب أن يكون القالب ملائما لنوع متجرك. لنأخذ سيارة فراري كمثال؛ صحيح أنّ مظهرها رائع، لكنّها ليست الخيار الأفضل كسيارة تُستخدم للسير في الشوارع العادية ولقضاء الاحتياجات اليومية كالذهاب والإياب من وإلى المحلات التجارية مثلًا. يجب أن تأخذ في الاعتبار جمهورك، علامتك التجارية، والأهم من ذلك منتجاتك. حاول اختيار قالب يعكس هذه الأمور الثلاثة بطريقة أو بأخرى. على سبيل المثال، ابحث عن قالب بمساحات بيضاء وفن طباعة typography بسيط وواضح إذا كنت تبيع الأثاث البسيط. أما إذا كنت تبيع لعب الأطفال، فابحث عن قالب بطابع مرح وألوان زاهية. إذا كنت تفكّر في استخدام قالب معيّن، وكان يُزعم أنّه متكامل مع WooCommerce، احرص على التحقق من جميع صفحات WooCommerce لتتأكّد من ذلك. لا تنس بعض الصفحات مثل "My Account" (حسابي)، صفحة Cart (السلة)، وصفحة Checkout (الدفع). انتظام تحديث القالب يقوم كلا من ووردبريس و WooCommerce بإطلاق تحديثات بشكل منتظم تقريبًا بما فيها بعض الإصدارات الكبيرة في السنة. يمكن أن تسبب هذه التحديثات الأخطاء في القوالب إذا لم يتم اختبارها بدقة مع أحدث الإصدارات التجريبية. لذلك من الجيّد أن تقوم بالتحقق من سجل التغييرات الخاص بالقالب لمعرفة فيما إذا كان المطور يقوم بتحديثه وإجراء التغييرات عليه باستمرار. وكذلك تأكد من أن تسأل فيما إذا كان القالب متوافقًا مع الإصدار الأحدث من ووردبريس و WooCommerce قبل أن تقوم بتثبيته. يمكنك إجراء فحص بسيط وسريع لكي تتأكّد من توافق القالب مع الإصدار الأحدث من WooCommerce. قم بعرض النسخة التجريبية للقالب demo، ثم اعرض مصدر الصفحة (انقر بزر الفأرة الأيمن > View page source). في شيفرة المصدر ستلاحظ وجود وسم meta خاص بمولّد الصفحة (generator) وهو يشير إلى إصدار WooCommerce الفعّال لهذا القالب. ستشاهد شيفرة مشابهة للشيفرة أدناه: <!-- WooCommerce Version --> <meta name="generator" content="WooCommerce 2.0.13" /> تأكّد من أنّ النسخة التجريبية للقالب تشغّل إصدار WooCommerce الحالي. وإذا كان إصدار WooCommerce الذي يتوافق معه القالب أقدم من الإصدار الحالي بعدة إصدارات، اسأل عن السبب وعمّا إذا كان القالب قديمًا جدًا. كن حذرًا في هذا الأمر. بإمكانك إلقاء نظرة على قائمة قوالب WooThemes التي تعمل مع WooCommerce. الدعم تظهر الأخطاء البرمجية bugs في بعض الأحيان في أغلب قوالب ووردبريس والملحقات الكبيرة. وإذا وجدت أحد الأخطاء البرمجية التي تريد إصلاحها بسرعة، أو على الأقل تريد أن يتم إرشادك إلى كيفية إصلاحها، فربما يكون هذا الخطأ قد حدث بسببك. لكي تحصل على المساعدة المناسبة لإصلاح الأخطاء، تحقق من سياسية الدعم التي يعتمدها متجر القوالب إذا كنت ستشتري أحد القوالب المدفوعة premium. وإذا كنت تستخدم قالبًا من WordPress.org تحقق من مدى نشاط منتدى الدعم. الوظائف المخصصة من الأمور الأخرى التي يفضّل التحقق منها هي مقدار الوظائف المخصصة التي يقدّمها القالب. يوفّر بعض من مصممي القوالب كمية هائلة من الوظائف في قوالبهم. من الأمثلة على ذلك موقع ThemeForest الذي يشتهر بذلك. من الوظائف التي يشيع تضمينها مع القوالب هي معارض الصور sliders، الشيفرات المختصرة shortcodes، الودجات widgets، أدوات إدارة تخطيط القالب، وأدوات بناء المحتوى. كن حذرًا عند اختيار القوالب من هذا النوع. لأنّه عندما تقرر تبديل القالب لاحقًا ستفقد جميع الوظائف المخصصة التي قد أصبحت معتمِدًا عليها. وهذا الأمر يمكن أن يسبب لك المشاكل إذا كانت الوظيفة مرتبطة بجميع أجزاء الموقع. لنفترض أنّك تستخدم الشيفرة المختصرة [slider] لعرض الصور على جميع صفحات المنتجات على متجرك. عندما تقوم بتبديل القوالب ستضطر إلى إزالة جميع حالات instances الشيفرة المختصرة تلك، وهذه العملية مملة وغير ممتعة على الإطلاق. ننصحك أن تبحث دائمًا عن القوالب الخفيفة والمرنة ثم إضافة وظائف إضافية عبر الملحقات والامتدادات. فبهذه الطريقة يمكنك تبديل القوالب مع المحافظة على الوظائف. التجاوب الأمر الأخير الذي يجب أن تأخذه في الاعتبار عند اختيار القالب هو التحقق فيما إذا كان القالب بتصميم متجاوب. يعني التصميم المتجاوب ببساطة أنّ القالب محسّن ليعمل على جميع الأجهزة، من الهواتف الذكية المحمولة، إلى أجهزة الحاسوب المكتبية وأجهزة التلفاز. ننوّه مجددا إلى أنّ تفضيل القالب عائد إلى جمهورك، لكن من الجدير بالذكر أنّ الويب ينمو ويتنوّع بشكل سريع، وأنّ الناس يستخدمون الكثير من الأجهزة المختلفة للتصفّح كالهواتف الذكية، التلفاز، الأجهزة اللوحية، إلخ، وغايتك هي تقديم تجربة رائعة لجميع العملاء. وختامًا، بإمكانك إلقاء نظرة على القائمة الكاملة لقوالب WooThemes المتجاوبة. ترجمة -وبتصرّف- للدرس Choosing the right theme.
  7. في المتاجر الإلكترونية، عادة ما يتم إنشاء الطلبات من قبل العملاء على الواجهة الأمامية للموقع؛ ابتداءً بتصفح المنتجات، ثم إضافة المنتج/المنتجات المرغوبة إلى السلة، وانتهاءً بإكمال عملية الدفع على صفحة الدفع. لكن في بعض الأحيان تحتاج إلى إنشاء طلب/أو طلبات يدويًا وعلى الواجهة الخلفية للموقع لأي غرض من الأغراض. كأن يطلب منك العميل أن تقوم بإنشاء الطلب بدلًا عنه، أو تريد أن تعطي عميلا معينًا سعرًا استثنائيًا. وفي بعض الأحيان تكون لديك منتجات غير معروضة على الكتالوج وتريد أن تبيعها لعميل معيّن. لإنشاء الطلب يدويًا اذهب إلى: Dashboard > WooCommerce > Orders > Add Order تحتوي صفحة إضافة طلب جديد على عدد من الأقسام، وكل قسم يحتوي على مجموعة خيارات وإعدادات يمكنك التحكّم بها يدويًا. Order Details القسم الأول هو تفاصيل الطلب: أول شيء ستلاحظه هو رقم الطلب (Order #41 في الصورة أعلاه). وهو رقم فريد يحدد افتراضيًا لتمييز الطلب ويكون غير قابل للتغيير. من قسم التفاصيل العامة General Details، تستطيع تغيير تاريخ الطلب ووقته من حقول Order Date. كما يمكنك تغيير حالة الطلب من قائمة Order Status. وكما ذكرنا في درس "إدارة الطلبات"، توجد حالة لكل مرحلة يمر بها الطلب من المتجر إلى العميل، وهي (للتذكير): Pending Payment: تم استلام الطلب لكنّه غير مدفوع بعد. Failed: فشل عملية الدفع أو رفضها (غير مدفوع). علمًا أنّ هذه الحالة قد لا تظهر على الفور، وبدلا من ذلك تظهر الحالة pending حتى يتم التحقق منها (وهذا يحصل مع بوابات دفع معيّنة مثل PayPal). Processing: تم استلام المدفوعات وإنقاص المخزون، والطلب بانتظار الاستيفاء. Completed: الطلب مستوفى ومكتمل، ولا يتطلّب المزيد من الإجراءات. On-Hold: بانتظار الدفع. تم طرح الطلب من المخزون لكن يجب أن تقوم بتأكيد الدفع. Cancelled: الطلب ملغي من قبل المدير أو العميل، ولا تتطلب هذه الحالة إجراءات أخرى. Refunded: تم استرداد الطلب من قبل المدير، ولا تتطلب هذه الحالة إجراءات أخرى. اختر الحالة التي تناسب الطلب الذي تنشئه. في حقل Customer حدّد العميل صاحب الطلب. استفد من حقل البحث للبحث عن اسم العميل وتحديده. الخيار الافتراضي هو Guest، وهو الزائر العادي الذي يتصفح المنتجات عادة وينشئ الطلب. انتقل بعد ذلك إلى تفاصيل الفوترة Billing Details وانقر على أيقونة القلم لتحريرها: قم بإدخال تفاصيل الفوترة كاملة؛ اسم العميل، اسم شركته، عنوان إقامته الحالية، طريقة الدفع، إلخ. إذا كنت تملك تفاصيل الفوترة للعميل المحدد في حقل Customer في قاعدة بيانات متجرك، قم بتحميل التفاصيل مباشرة بالنقر على أيقونة Load Billing Address دون الحاجة إلى إدخالها يدويًا. انتقل إلى الجزء الأخير في هذا القسم وهو تفاصيل الشحن Shipping Details. انقر على أيقونة القلم لتحريرها: قم بإدخال عنوان مكان تسليم الطلب إلى العميل. وإذا قام العميل بتوفير أيّة ملاحظات حول الشحن قم بكتابتها في حقل Customer Provided Note. إذا كانت تفاصيل الشحن للعميل المحدد في حقل Customer مخزونة في قاعدة بيانات متجرك، قم بتحميل التفاصيل مباشرة بالنقر على أيقونة Load Shipping Address دون الحاجة إلى إدخالها يدويًا. وإذا كانت عنوان الشحن هو نفسه عنوان الفوترة انقر على أيقونة Copy from Billing. Order Items في هذا القسم ستقوم بإضافة جميع المنتجات التي يحتويها الطلب، بالإضافة إلى كمياتها وأسعارها: لإضافة منتج إلى الطلب انقر على Add item(s) line، ثم (Add Product(s: استخدم حقل البحث للبحث عن المنتجات التي تريد إضافتها. بإمكانك اختيار أكثر من منتج في نفس الوقت، وبعد الانتهاء من تحديد المنتجات انقر على Add: سيتم عرض تفاصيل المنتج (الكمية، السعر، والضريبة) بشكل منفصل بالرغم من أنّك قمت بتحديدها في آن واحد: انقر على أيقونة القلم المقابلة لاسم المنتج لتحرير تفاصيله: Qty: كمية المنتج التي سيتم بيعها. يمكنك إدخال الكمية المرغوبة في الحقل. سيتغير إجمالي السعر تلقائيًا عند تغيير الكمية. Total: يعرض الحقل العلوي إجمالي سعر المنتج "بعد" خصم ما قبل الضريبة pre-tax discount. أما الحقل السفلي فيعرض إجمالي سعر المنتج "قبل" خصم ما قبل الضريبة. يمكنك إدخال السعر يدويًا وحسب رغبتك. Tax: يعرض الحقل العلوي قيمة الضريبة "بعد" خصم ما قبل الضريبة. أما الحقل السفلي فيعرض قيمة الضريبة "قبل" خصم ما قبل الضريبة. وكما هو الحال في حقول إجمالي السعر، يمكنك إدخال قيم الضريبة لكل المنتجات المرغوبة يدويًا. Add Meta: يمكنك استخدام هذا الزر لإضافة خيارات تفصيلية أكثر للمنتج. على سبيل المثال إذا كان منتجك بألوان متعددة، وكان المنتج المضاف إلى الطلب بلون معيّن، انقر على Add Meta وأدخل العنوان واللون في حقولها المخصصة (مثل Color: Gray). بإمكانك إضافة أو حذف أي خيار تفصيلي وحسب رغبتك: ملاحظة: "خصم ما قبل الضريبة" هو الخصم الذي يتم تطبيقه قبل حساب الضريبة على المنتجات في السلة. في الإصدارات الأقدم من WooCommerce 2.3، كان هناك خيار لتطبيق الخصومات قبل حساب الضريبة "أو" بعدها، وقد تم إلغاء هذه الخاصية في الإصدارات الحديثة وأصبحت الخصومات تطبّق قبل الضريبة فقط. في أسفل قسم عناصر الطلب يوجد زر Add Fee وهو يتيح لك إمكانية إضافة رسوم إضافية على الطلب عند الحاجة. انقر على هذا الزر ليتم إضافة رسوم جديدة ثم انقر على أيقونة القلم لتحرير تفاصيل الرسوم: قم بإدخال اسم الرسوم، حالة الضريبة ومبلغ الرسوم، وسيتم تطبيقها على جميع العناصر في الطلب. توجد في هذا القسم أيضًا بعض الإجراءات Actions التي يمكنك تطبيقها على عناصر الطلب. تحتوي قائمة Action المنسدلة على قسمين: Edit: ويحتوي على خيار (Delete selected line item(s الذي يمكنك استخدامه لحذف عناصر الطلب التي تحددها. Stock Actions: ويحتوي على خيار Reduce line item(s) stock الذي يستخدم لإنقاص مخزون العنصر المحدد، و Increase line item(s) stock الذي يستخدم لزيادة مخزون العنصر المحدد. انقر على أيقونة الدائرة لتطبيق الإجراء. على سبيل المثال إذا كان مخزون العنصر المحدد 10 وقمت بتحديد الخيار Increase line item(s) stock سيصبح عدد المنتجات في المخزون 11. بعد الانتهاء من إضافة جميع عناصر الطلب وتحرير خياراتها، انقر على Add Tax إذا كنت تريد فرض ضريبة معين على الطلب: قم بتحديد الضريبة المرغوبة من قائمة الضرائب المستخدمة على متجرك (والتي تقوم بإضافتها مسبقًا؛ راجع درس ضبط إعدادات الضرائب) ثم انقر على Add: بعد ذلك قم بالنقر على زر Calculate Tax ليتم حساب مبلغ الضريبة، ثم انقر على زر Calculate Total لحساب إجمالي مبلغ الطلب متضمنًا الضرائب، الشحن، والخصومات إن وجدت: إنّ طريقة الحساب التلقائية هذه هي من الطرق الرائعة لحساب إجمالي مبلغ الطلب وخصوصًا إذا كان الطلب يحتوي على الكثير من العناصر ذات معدلات ضرائب مختلفة. Custom Fields يُستخدم هذا القسم لإضافة حقول مخصصة تعرض معلومات تفصيلية أكثر للطلب metadata، وتُعرض هذه المعلومات على الواجهة الأمامية للموقع. بإمكانك اختيار حقل مخصص Custom Field من القائمة أو إنشاء واحد جديد بالنقر على Enter New. على سبيل المثال قمنا باختيار total_sales لعرض إجمالي المبيعات لمنتجات الطلب الحالي، ثم قمنا بإدخال قيمة إجمالي المبيعات (75) في حقل Value: بعد اختيار (أو إدخال) الحقل المخصص، انقر على Add Custom Field. Downloadable Product Permission لقد ذكرنا في درس إنشاء المنتجات أنّه يمكن إضافة منتج قابل للتحميل Downloadable. ويقصد به المنتج الافتراضي غير القابل للشحن، كبرنامج أو كتاب إلكتروني. تُرسل هذه المنتجات إلى العميل كرابط قابل للتنزيل بعد تغيير حالة الطلب إلى Processing أو Completed: من هذا القسم يمكنك التحكّم في وصول العميل إلى المنتج بإدخال اسم المنتج القابل للتحميل في Downloadable Product Permission ثم النقر على Grant Permission. لكن أولا عليك أن تتأكد من إدخال عنوان البريد الإلكتروني للعميل في تفاصيل الفوترة، وكذلك إضافة المنتج القابل للتحميل إلى عناصر الطلب. Order Actions يوجد هذا القسم على جهة اليمين من نافذة إنشاء طلب جديد وهذا القسم مفيد جدًا في حالة إنشاء الطلب يدويًا، حيث يمكنك اختيار أي إجراء من الإجراءات المضمّنة في القائمة ليتم توليد بريد إلكتروني يحتوي على معلومات حسب الخيار المحدد ومن ثم يُرسل إلى العميل المحدد في حقل Customer الموجود في قسم Order Details. New Order: لإرسال بريد إلكتروني إلى العميل يعلمه بإنشاء طلب جديد. Cancelled Order: لإرسال بريد إلكتروني إلى العميل في حالة إلغاء الطلب. Processing Order: عندما تكون حالة الطلب processing سيتم إرسال بريد إلكتروني إلى العميل ليعلمه بذلك. Completed Order: لإرسال بريد إلكتروني إلى العميل عند إكمال الطلب وشحنه. Refunded Order: لإرسال بريد إلكتروني إلى العميل عند استرداد الطلب. Customer Invoice: لإرسال بريد إلكتروني يحتوي على فاتورة الطلب إلى العميل. Generate Download Permission: لإرسال بريد إلكتروني إلى العميل يحتوي على رابط تحميل المنتج عندما تمنح العميل إمكانية الوصول إلى ذلك التحميل. اختر الإجراء المرغوب ثم انقر على أيقونة الدائرة لتطبيقه وإرسال البريد الإلكتروني إلى العميل. Order Notes يعرض هذا القسم الملاحظات المرتبطة بالطلب. وهو يستخدم لتخزين بعض التفاصيل مثل نتيجة الدفع، أو إنقاص المخزون. يمكنك الاستفادة من هذا القسم بإضافة ملاحظات حول الطلب الحالي واستخدامها لأي غرض من الأغراض. هناك نوعان من الملاحظات، الملاحظات الخاصة Private Note وملاحظات للعميل Note to Customer: الملاحظات الخاصة تُعرض عليك فقط، وملاحظات العميل تُعرض على العميل عندما يقوم بفتح تفاصيل الطلب، ويمكنك استخدام النوع الأخير كوسيلة تواصل سريعة بينك وبين العميل. اختر النوع المرغوب واكتب الملاحظة ثم انقر على Add لإضافتها. بعد أن تنتهي من إنشاء الطلب وتخصيص جميع خياراته انقر على Save Order في قسم Order Actions لحفظ الطلب.
  8. من خلال الدروس السابقة تعرّفنا على كيفية إنشاء متجر إلكتروني على WooCommerce وقمنا بضبط إعداداته. كما تعرفنا على كل أنواع المنتجات وطريقة إضافتها، بالإضافة إلى كيفيّة إدارة الطلبات واسترداد الطلبات. في هذا الدرس سنلقي نظرة على التقارير العامة الخاصة بالمتجر والتي تساعدك على معرفة أداء متجرك من شهر إلى آخر باستخدام الإحصاءات والمخططات البيانية. كما سنغطي تقرير حالة النظام الذي يمكّنك من استكشاف الأخطاء وإصلاحها. التقارير العامة Reports للوصول إلى تقارير متجرك اذهب إلى: WooCommerce > Report أول ما سيُعرض عليك بشكل افتراضي هو الطلبات في الأيام السبعة الماضية، لكن لنبدأ من البداية لنتعرّف على جميع المعلومات التي يمكنك الحصول عليها. Order سنبدأ من تبويب الطلبات Order الرئيسي وتبويب المبيعات حسب التاريخ Sales by Date الفرعي: كما نلاحظ يحتوي تبويب المبيعات حسب التاريخ على 5 خيارات لعرض بيانات المبيعات؛ حسب السنة Year، الشهر الماضي Last Month، الشهر الحالي This Month، الأيام السبعة الماضية Last 7 Days، بالإضافة إلى تقويم لتحديد نطاق تاريخ مخصص Custom. عند تحديد أيّ من هذه الخيارات سيتم تمثيل البيانات لتلك التواريخ على مخططات بيانية. وقبل أن نتحدّث عن تفاصيل المخططات نود الإشارة إلى أنّها تشتمل على الطلبات التي حُدّدت حالتها Processing، On-Hold أو Completed. لنأتِ إلى المخطط: يدعى العمود على جهة اليسار بمفتاح المخطط، Graph Key، وهو يشتمل على الإحصاءات مع الأرقام والألوان التي تمثّلها على المخطط. وهذه الإحصاءات هي من الأعلى إلى الأسفل: إجمالي المبيعات في الفترة المحددة gross sales in this period، صافي المبيعات في الفترة المحددة net sales in this period، ومتوسط المبيعات اليومية average daily sales. يأتي بعدها الطلبات المقدّمة orders placed، السلع التي تم شراؤها items purchased، المبالغ المفروضة للشحن charged for shipping، المبالغ المُعادة in refunds، وقيمة المبالغ للقسائم المستخدمة worth of coupons used. ستلاحظ أنّه عند تمرير الفأرة فوق كل مفتاح سيتم تمييز الخط الذي يمثّله على المخطط بتغيير لونه إلى البنفسجي. ومهما تغيّر النطاق الزمني الذي تحدده، ستبقى هذه المفاتيح نفسها لتبويب Sales by Date الفرعي. لننتقل إلى التبويب الفرعي الثاني المبيعات حسب المنتج Sales by Product: ستلاحظ تغيّر العمود الجانبي على جهة اليسار، وستشاهد 4 أقسام تبدأ بقسم Product Search الذي يحتوي على حقل بحث يمكنك استخدامه للبحث عن منتج محدد وعرض إحصاءاته، يليه Top Sellers الذي يعرض أفضل 5 منتجات، ثم To Freebies الذي يعرض أفضل منتجات مجانية، وأخيرًا Top Earners الذي يعرض المنتجات التي حصلت على أعلى المبيعات. بعد هذا التبويب يأتي تبويب المبيعات حسب الفئة Sales by Category: اكتب اسم الفئة في حقل البحث قم انقر على Show لعرض بيانات المبيعات الخاصة بهذه الفئة. وكذلك بإمكانك تحديد جميع الفئات All لعرض مبيعات جميع الفئات، ومن ثم تحديد None لإلغاء عرضها. التبويب الفرعي الأخير ضمن تبويب Orders هو القسائم حسب التاريخ Coupons by Date: ستشاهد في العمود على جهة اليسار إجمالي مبلغ الخصم discount in total، وإجمالي عدد القسائم المستخدمة coupons used in total للفترة الزمنية المحدّدة. وكذلك بإمكانك تصفية البيانات حسب القسيمة Filter by coupon، حسب القسيمة الأكثر استخدامًا Most Popular، أو حسب القسيمة ذات أعلى مبلغ خصم Most Discount. Customers بعد الانتهاء من تبويب Order لننتقل إلى تبويب العملاء Customers ثم إلى تبويب Customers vs. Guests الفرعي: ستشاهد في العمود الجانبي عدد العملاء الذين قاموا بالتسجيل على موقعك خلال الفترة المحدد، وإذا كان الشراء من قبل زائري المتجر (غير المسجلين) مسموح على موقعك، ستتمكن من مشاهدة مبيعات العملاء مقابل مبيعات الزائرين. التبويب الفرعي الثاني هو Customer List: يعرض هذا التبويب قائمة عملائك من الأحدث إلى الأقدم. ويعرض تفاصيل كل عميل كاسمه Name، اسم المستخدم الخاص به User name، عنوان بريده الإلكتروني Email، موقعهLocation، عدد الطلبات التي قام بها Orders، مقدار المال الذي أنفقه في الشراء من متجرك Money Spent، الطلب الأخير الذي قام به Last Order، بالإضافة إلى أزرار إعادة تنشيط حالة العميل refresh، تحرير معلوماته Edit، وعرض طلباته view. Stock بعد تبويب Customers ننتقل إلى تبويب المخزون Stock: مصدر الصورة من تبويب Low in stock الفرعي تستطيع الاطلاع على قائمة المنتجات ذات المخزون القليل، إذ يعرض اسم المنتج Product، اسم المنتج الرئيسي الذي يندرج تحته Parent (إن وجد)، عدد المنتجات المتبقية في المخزون Units in stock، حالة المخزون Stock status، وبعض الإجراءات التي يمكنك إجراؤها كتحرير المنتج أو عرضه. وعلى غرار هذا التبويب، يعرض تبويب out of stock الفرعي المنتجات النافدة من المخزون. أما التبويب الفرعي الأخير Most Stocked، فهو مشابه للتبويبين الفرعيين السابقين، فهو يعرض المنتجات ذات التي تملك أكبر كمية في المخزون: Taxes التبويب الأخير في قسم التقارير هو الضرائب Taxes ونبدأ من التبويب الفرعي الضرائب حسب الرمز Taxes by code: وكما في الأقسام السابقة، يمكنك من هذا التبويب الاطلاع على الضرائب المفروضة، حيث يعرض اسم الضريبة المطبّقة Tax، معدل الضريبة Rate، عدد الطلبات Number of orders، مبلغ الضريبة Tax amount، مبلغ ضريبة الشحن Shipping tax amount، وإجمالي مبلغ الضريبة Total tax amount. التبويب الفرعي الثاني والأخير في تبويب Taxes هو Taxes by date: مصدر الصورة يقسم هذا التبويب إلى فترات زمنية محددة (السنة، الشهر الماضي، الشهر الحالي، إلخ)، وفي كل من هذا الفترات يعرض عدد الطلبات Number of orders، إجمالي المبيعات Total sales، إجمالي أسعار الشحن Total shipping، إجمالي الضرائب المفروضة Total tax، بالإضافة إلى صافي الربح Net profit. تقرير حالة النظام System Status كما ذكرنا سابقًا، يعتبر تقرير الحالة من الأدوات المفيدة التي تساعدك على استكشاف الأخطاء وإصلاحها على موقعك. حيث يمكنك أن تطّلع على إصدارات البرنامج، إعدادات الخادوم وغيرها الكثير. لعرض حالة النظام الخاصة بموقعك اذهب إلى: WooCommerce > System Status System Status سيتم توجيهك أولًا إلى تبويب System Status مع عرض ملاحظة في الأعلى لاستخدامها إذا كنت ستتصل بفريق دعم WooCommerce: عندما تنقر على زر Get System Report سيتم إعطاؤك تقرير حالة النظام والذي يمكنك نسخه ولصقه وإرساله إلى فريق الدعم: انقر على Copy for Support ثم قم بلصقه في نموذج تذكرة الدعم. تحت هذا التقرير ستلاحظ أنّ الحالات المختلفة تندرج تحت الأقسام ذات الصلة. تتضمنّ هذه الأقسام: WordPress Environment Server Environment Server Locale Active Plugins Settings WC Pages Taxonomies Theme Templates قد يبدو معظم هذه المعلومات غير مألوف بالنسبة لك، لذلك سنغطّي بعض معلومات استكشاف الأخطاء المفيدة، من الأعلى إلى الأسفل، والتي يمكن أن تُستخدم من قبل الجميع. WordPress Environment يحتوي هذا القسم على معلومات تتعلّق بإصدارات WooCommerce و WordPress التي تستخدمها. يمكن أن تكون هذه المعلومات مفيدة عند استكشاف الأخطاء على موقعك. ننصحك دائما باستخدام آخر إصدارات WooCommerce و WordPress لتجنّب أي مشاكل قد تحدث بسبب استخدام البرامج القديمة: يمكنك أيضًا من خلال هذا القسم رؤية سعة الذاكرة memory limit التي يملكها ووردبريس من الخادوم الذي تستخدمه. وإذا كانت سعة الذاكرة قليلة على خادومك، سيقوم WooCommerce بعرض تنبيه باللون الأحمر أمام سطر WP Memory Limit، حيث يتطلّب WooCommerce سعة ذاكرة تساوي MB64 كحد أدنى لكي يعمل على موقعك. إذا كنت ترغب في زيادة السعة، بإمكانك الاتصال بالمضيف host لمساعدتك في هذا الأمر. Server Environment يحتوي هذا القسم على كثير من المعلومات التقنية الخاصة بالخادوم: لكن ما يهمّنا هنا هو سطر: SUHOSIN Installed fsockopen/cURL SoapClient يمكن أن تسبب سعة SUHOSIN المتاعب في بعض الأحيان إذا كانت لديك مشاكل في حفظ منتج بالعديد من الأصناف variations، علمًا أنّه يمكنك الاتصال بالمضيف لزيادة هذه السعة إن اقتضت الحاجة. أما fsockopen/cURL فيُستخدم من قبل بوابات دفع محددة للاتصال بخواديمها البعيدة. بالإضافة إلى أنّ بعض الملحقات الأخرى قد تستخدمه للاتصال بالخواديم البعيدة الأخرى. وأخيرًا عميلSOAP. من المهم تثبيت هذا العميل بالنسبة لبعض خدمات الشحن. على سبيل المثال، يتطلب FedEx، أحد ملحقات طرق الشحن لـ WooCommerce تثبيت SOAP لاستخراج كلف الشحن المباشر لعملائك. Server Locale يحتوي هذا القسم على القليل من المعلومات والتي لا تسبب عادة المشاكل على الموقع: من هذا القسم يمكنك معرفة الرمز المستخدم كفاصلة عشرية decimal_point، فاصلة الآلاف thousands_sep، الفاصلة العشرية للقيم النقدية mon_decimal_point، وفاصلة الآلاف للقيم النقدية mon_thousands_sep. Active Plugin يعرض هذا القسم الملحقات النشطة التي تستخدمها على موقعك: بإمكانك النقر على اسم الملحق لزيارة الموقع الذي قام بإنشائه، كما يمكنك رؤية اسم مطوّر الملحق وإصدار الملحق. وإذا كان هذا الملحق يحتاج إلى تحديث، سيظهر تنبيه في هذا القسم يعرض عليك الإصدار المتوفر. من المهم أن تقوم بتحديث جميع الملحقات التي تملك تحديثات متوفرة، حيث يتم حلّ إصلاح العديد من الأخطاء بتحديث جميع الأجزاء على موقعك. Settings يعرض هذا القسم بعض إعدادات WooCommerce. على سبيل المثال يعرض إذا كانت خيار الضريبة أو الشحن مفعّل، أو العملة المستخدمة على المتجر، إلخ... WC Pages يعرض هذا القسم معلومات بسيطة أيضًا، مثال الصفحات التي قمت بتعيينها كالصفحة الرئيسية للمتجر Shop Base، صفحة السلّة Cart Page، صفحة الدفع Checkout، وصفحة حسابي My Account: Taxonomies يعرض هذا القسم أنواع المنتجات المتاحة التي يمكنك إنشاؤها على متجرك: ستلاحظ وجود الأنواع الافتراضية؛ البسيطة Simple، المجمّعة Grouped، الخارجية External، والمتنوّعة Variable. وستُدرج أنواع أخرى من المنتجات تحت هذا القسم إذا كنت تستخدم ملحقات مثل Subscriptions أو Bookings. Theme يعرض هذا القسم معلومات حول القالب الذي تستخدمه، مثل اسم القالب، إصداره، ومصدره. كما يعرض فيما إذا كان هذا القالب فرعي child theme، وإذا كان مدعومًا من WooCommerce: Templates يعرض هذا القسم الملفات التي تتجاوز Override صفحات قالب WooCommerce الافتراضي: إذا كان قالبك يتجاوز override قوالب WooCommerce، يمكن أن يسبب ذلك المشاكل إذا أصبحت القوالب قديمة (تحتاج إلى تحديث). لذلك ننصح المبرمجين بعدم استخدام التجاوز override واستخدام الخطّافات hooks، الإجراءات actions والمرشحات filters المدمجة built-in لتخصيص قوالبهم لتعمل مع WooCommerce. هذا القسم يعرض عليك ما الذي يتم تجاوزه. على سبيل المثال، إذا كانت لديك مشاكل في الدفع checkout، وكان قالبك يتجاوز قالب الدفع الخاص بـ WooCommerce، فعلى الأرجح قد حصل تضارب في هذه الحالة. ويمكن إصلاح هذه المشكلة بتحديث قالبك إلى إصدار متوافق. Tools توجد في هذا التبويب العديد من الأدوات المفيدة، وسنغطّي الأدوات الأكثر استخدامًا بصورة سريعة في هذا الدرس: إذا كانت لديك مشاكل مع المعلومات العابرة transients بإمكانك مسح جميع معلومات WooCommerce العابرة والمعلومات العابرة منتهية الصلاحية من ووردبريس بالنقر على زرّي Clear transients و Clear expired transients. من الأدوات الأخرى المفيدة هو زر Install Pages، فإذا كانت لديك مشاكل مع صفحات WooCommerce أو إذا كنت لا ترغب في تنصيبها واحدة تلو الأخرى، بإمكانك النقر على زر Install Pages وسيتم إنشاء صفحات WooCommerce المفقودة، ولن يتم استبدال أي من الصفحات التي قمت بتعيينها بالفعل من إعدادات WooCommerce. الخيار الآخر المفيد هو Template Debug Mode. عند تفعيل هذا الخيار Enable سيُتاح لمدير الموقع إمكانية تعطيل أي override يستخدمه القالب، مما يساعدك على التحقق فيما إذا كان قالبك يسبب أية مشاكل. بإمكانك أيضًا تفعيل الخيار Remove All Data والذي سيقوم بحذف جميع بيانات المنتجات وبيانات الطلبات على WooCommerce. يجب أن تستخدم هذا الخيار بحذر وتتأكّد فيما إذا كنت ترغب حقًا في حذف جميع بيانات منتجاتك وطلباتك عندما تحذف ملحق WooCommerce من على موقعك. بهذا نكون قد غطّينا أهم الأجزاء من إعدادات حالة النظام في WooCommerce. استخدم هذه الأدوات (جنبًا إلى جنب مع المساعدة من فريق الدعم) عند تحاول إصلاح أي مشاكل قد تعترضك.
  9. توجد في WooCommerce أربعة أنواع من المنتجات التي يمكنك إنشاؤها، وهي المنتجات البسيطة Simple Products، المنتجات المجمّعة Grouped Products، المنتجات الخارجية/التابعة External/Affiliate Products، والمنتجات المتنوّعة Variable Products. وسنلقي نظرة على كل نوع وطريقة إنشائه. سنغطّي نوعين في هذا الجزء، فإذا كان هذا الدرس الأول الذي تطّلع عليه حول متاجر WooCommerce، ننصحك بالرجوع إلى الدروس السابقة للتعرّف على كيفية إنشاء المتجر، تهيئته، وضبط إعداداته. المنتج البسيط Simple Product يُستخدم المنتج البسيط في معظم الحالات، وعادة ما يكون قابلًا للشحن ولا يملك العديد من التغيرات/الخيارات، كالكتب مثلا. إنّ إضافة المنتج البسيط هي عميلة سهلة ومشابهة لإضافة منشور قياسي على ووردبريس. لإضافة منتج اذهب إلى Dashboard > Products > Add Product الواجهة التي ستُعرض عليك ستكون مألوفة، ستشاهد حقل العنوان في الأعلى وأسفله حقل محرّر المحتوى. الجديد في هذه النافذة هو مجموعة خيارات بيانات المنتج Product Data، وحقل وصف المنتج. وعلى الشريط الجانبي ستلاحظ وجود 4 مربعات خاصة بفئة المنتج Product categories، وسوم المنتج Tags، صورة المنتج Product Image (وهي عادة ما تكون الصورة المميزة للمنتج)، وكذلك مربع معرض المنتج Product Gallery. وستجد هذه المربعات تحت مربع Publish المعتاد: في حقل Title قم بإدخال اسم منتجك، وفي حقل المحرر تحدّث حول منتجك وما يميّزه وبالتفاصيل المرغوبة. ما تكتبه في هذا الحقل سيظهر تحت اسم المنتج عند استخدام تخطيط نموذجي لصفحة المنتج: في مربع Product Data يتم إدخال جميع المعلومات المهمة المتعلّقة بالمنتج. من قائمة نوع المنتج اختر أحد الأنواع الأربعة Simple، Grouped، Variable، External/Affiliate. وبما أننا نتحدّث عن المنتج البسيط سنختار Simple Product: ستلاحظ وجود خيارين إضافيين بجانب قائمة نوع المنتج، وهما Visual وDownloadable. وهي تتيح لك إنشاء المنتجات الافتراضية (غير مادية وغير قابلة للشحن)، والمنتجات القابلة للتحميل (سنتحدث عنها في الجزء القادم). الخيارات الأخرى مقسّمة على عدّة أقسام، وهي، من الأعلى إلى الأسفل، الخيارات العامة General، خيارات الجرد Inventory، الشحن Shipping، المنتجات المرتبطة Linked Products، السمات/الخواص Attributes، والخيارات المتقدمة Advanced. General في حقل SKU قم بإدخال رمز التخزين التعريفي للمنتج (Stock Keeping Unit (SKU إذا كنت تستخدم هذه الرموز في متجرك. في حقل Regular Price قم بإدخال السعر الاعتيادي لمنتجك (دون تخفيض). وإذا كنت تنوي عرض المنتج للتخفيض، قم بإدخال السعر بعد التخفيض في حقل Sale Price، ثم قم بجدولة فترة التخفيض بالنقر على رابط Schedule. عند النقر عليه سيظهر حقلان إضافيان: في الحقل الأول أدخل تاريخ بداية التخفيض، وفي الحقل الثاني أدخل تاريخ نهاية التخفيض. إذا كنت تريد إلغاء هذه الحقول انقر على Cancel. من قائمة حالة الضريبة Tax Status حدّد فيما إذا كان هذا المنتج خاضع للضريبة Taxable، لرسوم الشحن فقط Shipping only، أو None إذا لم يكن المنتج خاضعًا للضريبة أو رسوم الشحن. من قائمة Tax Class حدّد إحدى فئات الضريبة التي قمت بإنشائها في إعدادات الضريبة. Inventory يتيح لك هذا القسم إدارة مخزون المنتج الحالي: قم بتفعيل إدارة المخزون على مستوى المنتج بتأشير الخيار Enable stock management at product level. ومن قائمة Stock Status حدّد حالة المخزون وفيما إذا كان متوفرًا In Stock أو نافدًا Out of Stock. قم بتأشير الخيار Sold Individually إذا كنت ترغب في بيع المنتج بشكل فردي، أي تسمح للعميل بشراء قطعة واحدة في الطلب الواحد. Shipping تلعب المنتجات الافتراضية دورًا في وجود هذا القسم، فإذا كان المنتج افتراضيًا (غير مادّي وغير قابل للشحن، كخدمة مثلا) قم بتأشير الخيار Visual بجانب قائمة نوع المنتج، وستلاحظ اختفاء قسم Shipping. لكن إذا كان منتجك ماديًا، ستكون هذه الخيارات مهمة: قم بإدخال وزن المنتج في حقل Weight وأبعاده في حقل Dimensions. من المهم إدخال هذه القيم بشكل صحيح ومضبوط، وإلا سيواجه العملاء مشاكل أو أسعار شحن خاطئة جدًا عند الدفع إذا كانت طريقة الشحن تحسب السعر على أساس الأبعاد. في الحقل الأخير Shipping Class قم باختيار فئة الشحن، إن كنت تستخدمها، لتساعدك على إعداد أسعار الشحن (وقد قمنا بشرح كيفية إنشاء فئات الشحن في الدرس السابق). Linked Products من هذا القسم تستطيع استخدام الارتقاء بالصفقة up-sell والبيع المتقاطع cross-sell للترويج لمنتجاتك الأخرى: استخدم حقل Up-Sells لتحديد منتجات أخرى توصي العميل بشرائها لكونها أكثر فائدة، أو ذات جودة أعلى. على سبيل المثال، إذا كنت تبيع القهوة، قد تود الترويج لغلايات الشاي وتشجيع العميل على شرائها باعتبارها ترقية في البيع. ستظهر المنتجات التي قمت بتحديدها في حقل Up-Sells على صفحة المنتج تحت تفاصيل المنتج الأصلي: أما حقل Cross-Sells فيمكنك استخدامه للترويج لمنتجات مشابهة أو ذات صلة بالمنتج في سلّة العميل. ستظهر هذه المنتجات في صفحة الدفع لجذب العملاء لشراء المزيد من المنتجات: يعتمد عرض منتجات Cross-Sells على القالب الذي تستخدمه، فبعض القوالب تقوم بإزالة هذه المنتجات من صفحة الدفع. سنتجاوز الخيار Grouping في هذه الفقرة وسنأتي إلى شرحه في فقرة المنتجات المجمّعة Grouped Products. Attributes هذا القسم غير مهم جدًا بالنسبة للمنتجات البسيطة، فالسمات عادة ما تُستخدم مع المنتجات المتنوّعة، مع ذلك، يمكن استخدامها مع المنتجات البسيطة. الخيارات في هذا القسم مفيدة في حالة رغبت في عرض معلومات إضافية حول المنتج والتي من غير المحتمل أن تنطبق على المنتجات الأخرى. على سبيل المثال إذا كنت تريد بيع نسخة "واحدة" من منتج متوفر بلغة إنجليزية لعملاء عرب، بإمكانك إنشاء سمة "اللغة" أو "Language" لذلك المنتج الوحيد، وعرضها في قسم بيانات المنتج على الواجهة الأمامية لمتجرك: سنفصّل الحديث عن السمات على مستوى المنتج في فقرة المنتجات المتنوّعة في الجزء القادم (راجع درس إدارة السمات). Advanced في حقل Purchase Note يمكنك إدخال ملاحظة أو عبارة تُرسل إلى العميل بعد الشراء. وفي حقل Menu Order قم بإدخال الترتيب الذي تريد أن يكون عليه المنتج الحالي في قائمة المنتجات. وأخيرًا يمكنك تفعيل المراجعات أو إلغاء تفعيلها لهذا المنتج بتأشير/إلغاء تأشير الخيار Enable Reviews. بعد الانتهاء من بيانات المنتج، انتقل إلى الشريط الجانبي. من قسم Product Categories حدّد فئة المنتج إذا كنت لديك منتجات ذات فئات مختلفة. بإمكانك إنشاء الفئات من صفحة Categories (كما وضّحنا في درس إدارة فئات المنتجات)، أو من الصفحة الحالية بالنقر على رابط Add New Product Category، ثم إدخال اسم الفئة في الحقل والنقر على زر Add New Product Category: بعدها قم بتأشير فئة المنتج من قائمة الفئات ثم انتقل إلى مربّع الوسوم Tags. تعمل وسوم المنتج بالضبط بنفس طريقة عمل وسوم المنشورات. أدخل وسوم المنتج في الحقل وافصل بين كل وسم وآخر بفاصلة (,)، ثم انقر على زر Add. بإمكانك إنشاء الوسوم مسبقًا من صفحة Tags حيث ستكون لديك خيارات أكثر، وكما وضّحنا في الدرس السابق. من مربّع Product Image قم برفع صورة تمثّل المنتج بنفس طريقة رفع الصورة للمنشورات. تعتبر هذه الصورة هي الصورة الرئيسية للمنتج والتي تُعرض على صفحة المتجر عند استعراض المنتج، أو الصورة المصغّرة التي تشاهدها في السلّة، إلخ. انقر على رابط Set product image لرفع الصورة: المربع الأخير في الشريط الجانبي هو Product Gallery، ومنه يمكنك إضافة أو رفع صور أخرى للمنتج: ستظهر هذه الصور تحت الصورة الرئيسية للمنتج Featured Image. المنتج المجمع Grouped Product المنتج المجمّع هو عبارة عن مجموعة من المنتجات ذات الصلة والتي يمكن بيعها بشكل فردي أيضًا، ويتألف من منتجات بسيطة فقط. على سبيل المثال، طقم أكواب شاي يمكن بيعها كمجموعة أو كل كوب على حدة. لكي تفهم هذا النوع بصورة أفضل، تخيّل أن المنتج المجمّع هو عبارة عن صندوق يحتوي بداخله منتجات بسيطة. لإنشاء منتج مجمّع اذهب إلى: Dashboard > Products > Add Product في البداية ابدأ بإنشاء المنتج المجمّع قبل أن تقوم بإضافة المنتجات البسيطة التي يتكون منها. قم أولا بإدخال اسم المنتج في حقل Title ثم انتقل إلى مجموعة بيانات المنتج. على سبيل المثال سنقوم بإنشاء منتج مجمّع من مجموعة ملحقات حاسوب محمول، وسنسميّه "Laptop Accessories" ليشتمل على فأرة، حقيبة، سماعة رأس، إلخ. من قائمة نوع المنتج اختر Grouped Product وستلاحظ تغيّر أقسام الخيارات على جهة اليسار حيث يتم إلغاء بعض الخيارات، وتتبقى خيارات Inventory ،Linked Products ،Attributes و Advanced: لقد تحدّثنا عن جميع هذه الخيارات في فقرة المنتج البسيط، قم بضبطها، ثم اختر فئة المنتج من مربع Product Categories وارفع صورة رئيسية له من مربع Product Image. بعد الانتهاء انقر على زر Publish في الشريط الجانبي لإنشاء المنتج: الآن أصبح المنتج المجمّع جاهزًا لإضافة المنتجات البسيطة إليه. لا تغادر صفحة المنتج المجمّع الذي قمت بإنشائه، وانتقل إلى أعلى الصفحة ثم انقر على زر Add Product بجانب عبارة Edit Product: قم بإضافة اسم للمنتج الأول في المجموعة في حقل Title (سنسميّه "Mouse" في مثالنا)، وأكمل باقي الخطوات المذكورة سابقًا، كتحديد الفئة، الوسوم، صورة المنتج، سعر المنتج، سعر التخفيض، إلخ. نأتي الآن إلى الجزء المهم، وهو قسم خيارات Linked Products. قم بإضافة المنتج البسيط إلى المنتج المجمّع الذي قمت بإنشائه قبل قليل من قائمة Grouping، اختر اسم المنتج المجمّع، وهو "Laptop Accessories" في مثالنا: بعد ذلك انقر على Publish، ثم قم بإضافة المنتج البسيط الثاني إلى المجموعة وبنفس الطريقة. في هذا المثال سيكون المنتج البسيط الثاني هو "الحقيبة". يتوفّر لديك خيار لإخفاء المنتجات البسيطة ضمن المنتج المجمّع وعدم عرضها في الكتالوج أو البحث، وعرضها فقط في المنتج المجمّع. إذا كنت لا تريد عرض هذا المنتج (البسيط) إلا عندما يقوم المستخدم بالنقر على المنتج المجمّع، انقر على Edit بجانب Catalog visibility: Catalog/search في مربّع النشر: قم بتحديد الخيار Hidden لتتأكد من عدم عرض هذا المنتج إلا ضمن المنتج المجمّع ثم انقر على OK: احفظ التغييرات بالنقر على Update. سنكمل الشرح، في الجزء القادم، حول النوعين المتبقيين، وسنتعرّف على كيفية إضافة منتج بسيط أو متنوّع قابل للتحميل.
  10. تحدثنا في الجزء الأول من هذا الدرس حول أنواع المنتجات على متاجر WooCommerce وألقينا نظرة عامة على المنتجات البسيطة والمنتجات المجمّعة وعلى كيفية إنشائها. في هذا الجزء سنكمل الشرح حول ما تبقى من المنتجات، وهي الخارجية/التابعة External/Affiliate، والمتنوّعة Variable، كما سنتعرّف على كيفية ضبط إعدادات المنتجات القابلة للتحميل Downloadable. المنتج الخارجي/التابع External/Affiliate Product المنتج الخارجي/التابع هو الذي تقوم بإدراجه ووصفه على متجرك ولكنّه يُباع على متاجر أخرى. لإنشاء منتج خارجي اذهب إلى: Dashboard > Products > Add Product قم بضبط الإعدادات الاعتيادية كإدخال اسم للمنتج في حقل Title، ووصف في حقل المحرر، بالإضافة إلى تحديد الفئة المناسبة للمنتج، إضافة الوسوم، صورة المنتج الرئيسية، وغيرها من الإعدادات، وكما ذكرنا في الجزء السابق. انتقل إلى مربّع Product Data واختر النوع External/Affiliate من قائمة الأنواع: عند تحديد هذا النوع سيتم حذف بعض أقسام الخيارات بينما يتم إضافة حقول إضافية إلى قسم General. الحقول الأكثر أهمية لهذا النوع من المنتجات هي Product URL و Button Text: في حقل Product URL قم بإضافة الرابط التابع للمنتج الخارجي، واستخدم حقل Button Text لتخصيص نص زر الطلب. عادة ما يكون هذا الزر بعنوان Add to Cart على متجرك، لكن في حالة المنتج الخارجي يمكنك إضافة أي نص ترغب فيه. أكمل بقية الإعدادات كإضافة السعر الاعتيادي للمنتج Regular Price وسعر التخفيض Sale Price، أو إضافة منتجات الارتقاء بالصفقة Up-Sells، والبيع المتقاطع Cross-Sells إن وجدت من قسم Linked Products، وهكذا. بعد الانتهاء من ضبط جميع الإعدادات انقر على زر Publish في الشريط الجانبي: المنتج المتنوع Variable Product المنتج المتنوّع هو المنتج الذي يملك عدة أصناف variations كل منها تختلف في رمز التخزين التعريفي SKU، السعر، خيارات التخزين، إلخ. على سبيل المثال قميص مُتوفّر بألوان و/أو أحجام مختلفة. لنبدأ بإنشاء منتج متنوّع، كقميص بأحجام مختلفة. اذهب إلى: Dashboard > Products > Add Product وكما هو الحال في الأنواع السابقة من المنتجات، ابدأ بإضافة اسم للمنتج في حقل Title، حدّد الفئة المناسبة من مربع Categories، أدخل الوسوم ذات الصلة في مربّع Tags، ارفع الصورة الرئيسية للمنتج، إلخ. نأتي الآن إلى الخطوة المهمة وهي تحديد نوع المنتج. اذهب إلى مربّع بيانات المنتج Product Data واختر Variable Product من قائمة الأنواع: سيظهر قسم خيارات جديد على الجهة اليسرى بعنوان Variations وهو يُستخدم لإنشاء أصناف أو إصدارات المنتج، لكن يجب أن تقوم أولا بإنشاء سمة Attribute للأصناف. قمنا في الجزء السابق من هذا الدرس بإنشاء سمة عامة للحجم، وبذلك نستطيع استخدام سمة الحجم مع أي منتج نقوم بإنشائه دون الحاجة إلى تكرار كل الخطوات لكل منتج على حدة. لاستخدام سمة تم إعداداها مسبقًا، قم بتحديدها من القائمة المنسدلة بجانب زر Add في قسم Attributes، ثم انقر على زر Add: بعد إضافة السمة أصبح بإمكانك ضبط إعداداتها لاستخدامها مع أصناف المنتج: أولًا، يجب عليك إضافة قيم/مفردات السمة في حقل Values. لقد قمنا سابقًا بإضافة مفردات سمة الحجم وهي "Small"، "Medium"، و"Large" عندما قمنا بإنشائها، لذلك سنكتفي بالنقر على زر Select all لإضافة جميع المفردات الموجودة. بإمكانك إضافة مفردات أخرى إذا لم تكن ترغب في استخدام المفردات الموجودة مسبقًا، أو إضافة مفردات إضافية إليها. على سبيل المثال سنقوم بإضافة حجم آخر إلى هذه السمة بالنقر على زر Add New: ندخل اسم المفردة الجديدة في الحقل الذي سيظهر ثم ننقر على OK. وبذلك ستتم إضافة المفردة الجديدة إلى السمة. بعد ذلك قم بتأشير الخيار Used for variations لتتمكن من ضبط إعدادات الأصناف/الإصدارات وجميع تفاصيلها اعتمادًا على مفردات السمة الحالية. انقر على Save Attributes قبل أن تنتقل إلى قسم Variations. من قسم Variations ستقوم بإنشاء أصناف منتجك. هذه العملية سهلة جدًا على WooCommerce، إذ تستطيع إنشاء كل الأصناف الموجودة في السمات مهما كان عددها بتحديد الخيار Create variations from all attributes من قائمة Add Variation. أو تستطيع إنشاء الأصناف التي ستبيعها يدويًا بتحديد الخيار Add Variation من نفس القائمة. حدد الخيار المرغوب ثم انقر على Go: بما أننا سنستخدم سمة Size سنحدد الخيار Create variations from all attributes: ستتم إضافة جميع مفردات السمة كأصناف للمنتج، وعند النقر عليه ستظهر مجموعة من الخيارات، بعضها مشابهة لخيارات المنتج البسيطة: ابدأ بإضافة صورة لكل صنف. على سبيل المثال إذا كانت لديك عدة خيارات للألوان، قم برفع صورة للمنتج الذي تبيعه بكل لون في قسم الصّنف ذي الصلة. بعد ذلك تستطيع إضافة رمز التخزين التعريفي SKU، تأشير الخيار Enable لتفعيل هذا الصّنف، تأشير الخيار Downloadable إذا كان المنتج قابل للتنزيل، تأشير الخيار Virtual إذا كان المنتج افتراضي (كخدمة مثلا)، أو تأشير الخيار Stock Management لتمكين إدارة المخزون. بعد ذلك قم بإدخال السعر الاعتيادي في حقل Regular Price، وسعر التخفيض وفترته الزمنية إن اقتضت الحاجة. إذا قمت بتأشير الخيار Stock Management أعلاه، قم بإدخال كمية المخزون في حقل Stock Qty، بعد ذلك حدد فيما إذا كنت تسمح بالطلبات المؤجلة backorder من قائمة Allow Backorders. بإمكانك عدم السماح بالطلبات المؤجلة عندما يكون مخزون المنتج نافدًا Do not Allow، أو السماح للعميل بشراء المنتج النافد وتنبيهه إلى أن الطلب سيؤجل لحين توفر المنتج Allow, but notify customer، أو جعل المنتج النافد يُعرض كما لو أنّه متوفر دون تنبيه العميل Allow. من قائمة حالة المخزون Stock Status حدّد فيما إذا كان المنتج نافد Out of Stock أو متوفر In Stock. ثم قم بإدخال وزن وأبعاد المنتج في الحقول المناسبة، علما أنّ هذه الحقول لن تظهر إذا قمت بتأشير الخيار Virtual. وأخيرًا قم بتحديد فئة الضريبة لهذا الصّنف من قائمة Tax Class، ثم قم بإضافة وصف في حقل Description إن أردت ذلك. قم بتكرار الخطوات السابقة على البدائل الأخرى للمنتج إن وجدت. المنتجات القابلة للتحميل Downloadable Products إذا كنت تريد بيع منتجات رقمية، سواء كانت بسيطة Simple أو متنوّعة Variable، بإمكانك القيام بذلك بسهولة جدًا باستخدام WooCommerce. لإنشاء منتج قابل للتنزيل يجب أن تحدد أولًا فيما إذا كان المنتج بسيطًا أو متنوّعًا. وسنغطّي في هذه الفقرة كيفية إعداد كلا النوعين وجعلها قابلة للتنزيل. إنشاء منتج بسيط قابل للتنزيل اتبع نفس خطوات إنشاء المنتج البسيط بالذهاب إلى: Dashboard > Products > Add Product بعد ذلك قم بإضافة اسم للمنتج في حقل Title، حدّد الفئة المناسبة من مربع Categories، أدخل الوسوم ذات الصلة في مربّع Tags، ارفع الصورة الرئيسية للمنتج، إلخ. من مربع بيانات المنتج اختر Simple Product من قائمة النوع ثم قم بتأشير الخيار Downloadable: ستلاحظ ظهور خيارات إضافية تحت حقل السعر في قسم الخيارات العامة General. الخيار الأول هو (Downloadable File(s، ومنه يمكنك إضافة الملف/الملفات التي سيستلمها المستخدم عند شراء المنتج. انقر على زر Add file ثم أدخل اسم الملف في حقل Name ورابطه في حقل File URL إذا كان الملف مرفوعًا على أحد المواقع، أو انقر على Choose File لرفعه على موقعك: واصل إضافة الملفات إذا كان المنتج يوفّر أكثر من عملية تنزيل واحدة. على سبيل المثال إذا كنت تبيع ملصقات بصيغة PNG وترغب في توفير إمكانية تحميل ملف PSD الأصلي بشكل منفصل. من حقل Download Limit حدّد عدد مرّات التحميل المتاحة للعميل. على سبيل المثال أدخل الرقم 5 إذا كنت تريد السماح للعميل بتحميل الملفات خمس مرات فقط. يمكنك ترك الحقل فارغًا، وفي هذه الحالة سيكون عدد مرات التحميل غير محدود. من حقل Download Expiry حدّد مدة انتهاء صلاحية الوصول للتحميل بالأيام. وأخيرًا حدد نوع التحميل من قائمة Download Type. وهذا الخيار مفيد بالتحديد إذا كنت توفّر تطبيقات، برمجيات، أو ملفات موسيقى كمنتجات قابلة للتحميل. فعند اختيارك النوع المناسب، سيتم إعداد المخطط الصحيح الذي تستخدمه محركات البحث لتحديد أي نوع من التحميلات تبيع. إذا لم يكن المنتج الذي تبيعه من البرمجيات أو الموسيقى، يمكنك اختيار نوع Standard Product. إنشاء منتج متنوع قابل للتنزيل اتبع نفس خطوات إنشاء المنتج المتنوّع بالذهاب إلى: Dashboard > Products > Add Product بعد ذلك قم بإضافة اسم للمنتج في حقل Title، حدّد الفئة المناسبة من مربع Categories، أدخل الوسوم ذات الصلة في مربّع Tags، ارفع الصورة الرئيسية للمنتج، إلخ. من مربع بيانات المنتج اختر Variable Product من قائمة النوع ثم قم بإعداد السمات Attributes والأصناف/الإصدارات Variations كما ذكرنا في فقرة إنشاء المنتج المتنوّع. على سبيل المثال، لدينا هنا كتاب قابل للبيع بإصدارين، مادي Physical ورقمي Digital، وقد قمنا بالفعل بإعداد السمات وإنشاء الأصناف. من قسم Variation انقر على الصّنف الذي تريد إضافة تحميل إليه لإظهار خياراته (الصّنف في مثالنا هو النسخة الرقمية Digital): تحت حقل الصور و SKU ستجد خيار Downloadable، قم بتأشيره، وستظهر حقول إضافية تحت قائمة Tax Class: اتبع نفس خطوات إضافة المنتج البسيط القابل للتنزيل، بالنقر على Add File وإدخال اسم الملف ورابطه. ثم انقر على Choose File لرفع الملف. وأخيرًا حدّد عدد مرات التحميل المتاحة من حقل Download Limit ومدة صلاحيته من حقل Download Expiry. بهذه الخطوة تكون قد انتهيت من إعداد المنتجات القابلة للتنزيل، البسيطة والمتنوّعة.
  11. بعد إنشاء متجرك الإلكتروني على WooCommerce وتهيئته و ضبط إعداداته (راجع الدروس السابقة)، ستكون خطوتك الأولى هي إنشاء المنتجات. لكن قبل أن نشرع في الحديث عن أنواع المنتجات وكيفية إنشائها، لنتعرّف أولا على كيفية إدارة فئات/تصنيفات المنتج Categories، الوسوم Tags، فئات الشحن Shipping Classes، والسّمات Attributes. فئات المنتج Product Categories على غرار فئات المنشورات على ووردبريس، بإمكانك إضافة فئات لتصنيف المنتجات، حذفها أو تعديلها. هناك بعض الخيارات الإضافية المتعلّقة بفئات المنتجات، وكذلك إمكانية رفع صور لتمثل الفئات. لإنشاء فئة جديدة اذهب إلى: Dashboard > Products > Categories من هذه النافذة تستطيع إنشاء فئات لإضافة منتجات إليها لاحقًا. علمًا أنّه يمكنك إنشاء الفئات أثناء إنشاء المنتجات أيضًا، لكن لن تملك التحكّم الكامل في خيار slug، الفئات الرئيسية Parent Categories، إلخ. في حقل Name قم بإدخال اسم الفئة، وفي حقل Slug قم بإدخال جزء العنوان URL لهذه الفئة. إذا لم تقم بإدخال slug مخصص سيقوم ووردبريس باستخدام اسم الفئة تلقائيًا عندما تنقر على Add New Product Category عند الانتهاء. إذا كانت لديك فئات رئيسية وفئات فرعية (مثلا فئة "ملابس" رئيسية وفئة "أقمصة" فرعية) يمكنك إدخال الفئة الفرعية ضمن الفئة الرئيسية من قائمة Parent. من هذه القائمة اختر الفئة الرئيسية (يُفترض أنّك قمت بإنشائها مسبقًا)، أو اختر الخيار None إن لم يكن لديك فئات متداخلة. في حقل Description قم بإدخال وصف للفئة، وهذا الخيار مفيد إذا كنت ستوفّر طريقة لبيع المنتجات حسب الفئة. عادة ما يُعرض الوصف على العملاء عندما يقومون بتصفّح المنتجات حسب الفئات، مع ذلك يعتمد الأمر على إعداداتك والقالب الذي تستخدمه. من قائمة Display Type اختر طريقة عرض الفئات على العملاء. يمكنك استخدام الخيار الافتراضي Default الذي سيعرض جميع المنتجات من جميع الفئات الفرعية، الخيار Products الذي سيعرض المنتجات فقط على صفحة الفئة، الخيار Subcategories الذي سيعرض قائمة من المنتجات الفرعية وعدد المنتجات التي تحتويها، أو الخيار Both الذي سيعرض كلّ من الفئات الفرعية في الأعلى، والمنتجات في الأسفل. وأخيرا يمكنك رفع صورة مصغّرة للفئة بالنقر على زر Upload/Add Image. وهذا الخيار مفيد إذا اخترت خيار Subcategories من طريقة العرض، حيث سيعرض قوائم من الصور المصغّرة لجميع الفئات الفرعية عند عرض الفئات مع الفئات الفرعية: وكذلك ستمثّل هذه الصورة المصغّرة الفئة عند عرض الفئات بالشكل المعتاد: بعد الانتهاء من تعديل جميع الخيارات انقر على Add New Product Category لإضافة الفئة. الوسوم Tags تعمل الوسوم بنفس طريقة عمل وسوم منشورات ووردبريس العادية. لإضافة وسم انقر على Tags من قائمة Products ثم قم بإدخال اسم الوسم في حقل Name، و slug مخصص في حقل Slug ووصف الوسوم في حقل Description: يمكن أن تكون الوسوم مفيدة إذا رغبت في توفير طريقة لتصفّح المنتجات باستخدام الوسوم، حيث يمكن إضافتها إلى قوائم التصفّح ويمكن حتّى أن تظهر على المنتجات نفسها. انقر على Add New Product Tag لحفظ الوسم. فئات الشحن Shipping Classes يمكن أن تُستخدم هذه الفئات لجمع المنتجات المتشابهة لغرض حساب سعر الشحن. لإضافة فئة شحن جديدة انقر على Shipping Classes من قائمة Products: تُستخدم هذه الفئات من قبل طرق الشحن الأساسية التي تم تحديدها ضمن إعدادات الشحن (مثل Flat Rate Shipping) أو طرق الشحن الاستثنائية premium (مثل Table Rate Shipping) لغرض المساعدة على إنشاء كُلف الشحن. على سبيل المثال لنقم بإضافة فئة شحن باسم "Book" لتساعدنا على إنشاء قواعد شحن خاصّة بمنتجاتنا من الكتب. في حقل Name قم بإدخال اسم فئة الشحن (وهو Book في مثالنا)، ثم أدخل slug هذه الفئة في حقل Slug، وضمّنها في الفئة الرئيسية إن وجدت باختيار الفئة الرئيسية من قائمة Parent، وأخيرًا اكتب الوصف المرغوب. بعد ذلك انقر على زر Add New Shipping Class لحفظ الفئة. السمات Attributes تُستخدم السمات لتعريف بيانات إضافية للمنتج كاللون، الحجم، الوزن، إلخ ومن ثم استخدامها عند إنشاء المنتجات. وهي مفيد ومطلوبة عند إنشاء المنتجات المتنوّعة variable على وجه الخصوص: يجب أن تأخذ في الاعتبار عند إنشاء السمات أنّه بعد إنشائها لن تتمكن من إعادة تسميتها لاحقًا. لنفترض أننا نبيع القمصان فقط في متجرنا، لذلك سنقوم بإنشاء سمة "Size" خاصة بالأحجام المختلفة. في حقل Name أدخل اسم السمة (وهو "Size" في هذا المثال)، ثم أدخل slug مخصص في حقل Slug. قم بتأشير الخيار Enable Archive لتفعيل صفحة أرشفة لهذه السمة، ثم حدد كيفية اختيار السمة من قائمة Type. بإمكانك تحديد طريقة الاختيار بالتحديد Select أو بإدخال نص يدويًا Text. استخدم Select إذا كنت ستقوم بإعداد المفردات terms مسبقًا في قائمة منسدلة (أي في هذا المثال نقوم بإعداد قائمة منسدلة تحتوي على الأحجام المختلفة المتوفرة). من قائمة Default Sort Order حدد طريقة فرز المفردات في قائمة السمة على الواجهة الأمامية لمتجرك. الخيارات المتوفرة هي ترتيب مخصّص Custom Order، أبجديًا حسب الاسم Name، أو حسب التسلسل (الرقمي) Name numeric، أو حسب الرمز التعريفي للمفردة Term ID. بإمكانك استخدام الترتيب المخصص لتتمكنّ من ترتيبها بسهولة بالسحب والإفلات. انقر على Add Attribute لكي تتمكّن من إضافة مفردات السمة. انقر على أيقونة الترس بجانب اسم السمة لإعداد مفرداتها. في حقل Name قم بإدخال اسم المفردة الأولى للسمة. في هذا المثال سنقوم بإضافة ثلاثة أحجام: صغير، متوسط، وكبير. لذلك سيكون اسم المفردة "Small". بعد ذلك قم بإدخال slug مخصص، وحدد السمة الرئيسية التي تتضمّن هذه السمة، إن وجدت، من قائمة Parent، ثم أدخل وصفًا مختصرًا في حقل Description. في العادة لا يظهر وصف السمة، لكن بعض القوالب توفر إمكانية عرضه. بعد ذلك انقر على زر Add New لإضافة مفردات جديدة. بعد إضافة جميع المفردات قم بترتيبها بسحب كل مفردة وإفلاتها عند الموضع المرغوب. بعد الانتهاء من إعداد جميع فئات المنتجات، الوسوم، فئات الشحن، والسمات، حان الوقت لتبدأ في إنشاء منتجاتك. تابع الدرس القادم لتتعرف على أنواع المنتجات وكيفية إنشائها.
  12. بدأنا في دروس سابقة بـإنشاء متجر إلكتروني على WooCommerce وقمنا بضبط إعدادات المتجر العامة General، إعدادات المنتجات Products، الضريبة Tax، الدفع Checkout، والشحن Shipping. سنغطي في هذا الدرس ما تبقّى من إعدادات المتجر والتي تتضمن إعدادات الحسابات Accounts، البريد الإلكتروني Email، والواجهة البرمجية API. إعدادات الحسابات من هذا التبويب تستطيع ضبط كيفيّة عمل حسابات عملائك. للوصول إلى هذه الإعدادات قم بتسجيل الدخول إلى موقعك ثم اذهب إلى: Dashboard > WooCommerce > Settings > Accounts يحتوي هذا التبويب على ثلاثة أقسام: Account Pages ومنه تقوم بإعداد صفحات الحسابات للعملاء: عندما تقوم بتثبيت WooCommerce سيقوم بإنشاء هذه الصفحة تلقائيًا، تأكّد من إبقاء الصفحة الافتراضية التي تم إنشاؤها، أو قم بإنشاء واحدة لكي يستطيع العميل استعراض الوظائف الخاصة بحسابه، كالطلبات، بالإضافة إلى تغيير تفاصيل الحساب عند الحاجة. My Account Endpoints Endpoints هي أجزاء من عنوان الصفحة URL، كصفحة My Account، تُلحق بذلك العنوان لمعالجة إجراءات معيّنة على الصفحة: إذا كنت تريد إنشاء Endpoints مخصّصة لعرض الطلب View Order، تعديل الحساب Edit Account، أو الإجراءات الأخرى، تأكّد من كون هذه الأجزاء فريدة ولا تظهر في عناوين الصفحات الأخرى على المتجر. وإلا ستعطل الروابط وستسبب مشاكل أخرى في صفحات حسابات العملاء. Registration Options من هذا القسم تتحكّم في خيارات التسجيل: بإمكانك تمكين التسجيل من على صفحة الدفع بتأشير الخيار Enable registration on the Checkout page، و/أو التسجيل من على صفحة "حسابي" Enable registration on the My Account page. هذه الخيارات مفيدة في حال كنت لا تسمح بإجراء الدفع من قبل زوار المتجر (غير المسجّلين)، ويتيح للعملاء الجدد سهولة التسجيل وإنشاء الحساب. من الخيارات الأخرى المفيدة هو Display returning customer login reminder on the Checkout page الذي يقوم بعرض تذكير بتسجيل الدخول للعملاء المتكررين على صفحة الدفع مما يتيح لهم سهولة الدخول إلى حساباتهم من على صفحة الدفع: وأخيرا من خيارات إنشاء الحساب Account Creation بإمكانك القيام بتوليد اسم مستخدم للعميل تلقائيًا من عنوان بريده الإلكتروني بتأشير الخيار Automatically generate username from customer email، وكذلك توليد كلمة سريّة لحساب العميل تلقائيًا بتأشير الخيار Automatically generate customer password، وسيتم إرسال تلك الكلمة السرية إلى عنوان البريد الإلكتروني الخاص بالعميل. انقر على Save Changes لحفظ التغييرات والانتقال إلى التبويب التالي. إعدادات البريد الإلكتروني توجد في هذا التبويب خيارات تعديل إعدادات البريد الإلكتروني والقوالب. للبدء بضبط الإعدادات اذهب إلى: Dashboard > WooCommerce > Settings > Emails يحتوي هذا التبويب أيضًا على ثلاثة أقسام: Email Notifications يحتوي هذا القسم على قائمة الإشعارات التي ستصلك (أو تُرسل للعميل) على البريد الإلكتروني والتي يمكنك تفعيلها أو إلغاء تفعيلها. ولكل رسالة إشعار، تستطيع تعديل بعض الخيارات مثل عنوان البريد الإلكتروني الذي سيُرسل إليه، عنوان الرسالة، إلخ: يمكن أن يقوم WooCommerce بإرسال إشعارات في الحالات التالية: الطلبات الجديدة New Order الطلبات الملغية Cancelled Order الطلبات الفاشلة Failed Order الطلبات الجارية Processing Order الطلبات المكتملة Completed Order الطلبات المستردّة Refunded Order فواتير العملاء Customer Invoice ملاحظات العملاء Customer Note استعادة الكلمة السرية Reset Password إنشاء حسابات جديدة New Account ملاحظة: الإشعارات الثلاثة الأولى تُرسل إلى عنوان البريد الإلكتروني الذي تحدده، أما الإشعارات المتبقية فتُرسل إلى العميل. يملك كل إشعار نفس الإعدادات تقريبًا، مع بعض الاختلافات التي سنأتي إلى ذكرها. بإمكانك الوصول إلى الإعدادات أما بالنقر على عنوان الإشعار في القائمة، أو النقر على أيقونة الترس المقابلة للعنوان في أقصى اليمين. لنبدأ بإعدادات إشعار New Order أولًا: الخيار الأول هو تفعيل/ إلغاء تفعيل هذا الإشعار بتأشير/إلغاء تأشير الخيار Enable this email notification. يفضّل معظم أصحاب المتاجر الإلكترونية استلام إشعار عن الحصول على طلب جديد، مع ذلك، الخيار راجع لك. في حقل (Recipient(s قم بإدخال عنوان/عناوين البريد الإلكتروني الذي تريد استلام الإشعار عليه. إذا قمت بإدخال أكثر من عنوان، تأكّد من فصلها بواسطة الفاصلة (,). في حقل Subject قم بإدخال عنوان الإشعار الذي سيصلك، بإمكانك استخدام العنوان الافتراضي الذي يحتوي على عنوان الموقع+ "New Customer Order"+ رقم الطلب+ تاريخ الطلب في نهايته: {site_title}] New customer order ({order_number}) - {order_date} أو بإمكانك إنشاء واحد مخصص بإدخال نص العنوان والتفاصيل الإضافية المرغوبة. من حقل Email Header يمكنك التحكم في العنوان الرئيسي لإشعار البريد الإلكتروني، ووظيفته تشبه وظيفة العنوان Subject. بإمكانك تركه فارغًا لاستخدام العنوان الرئيسي الافتراضي. لهذا الحقل المزيد من المعلومات التقنية التي سنتجاوزها لأنّها غير مهمة في هذا الدرس. من حقل Email Type يمكنك التحكّم في الصيغة التي سيرسل بها البريد الإلكتروني. الخيارات المتاحة هي Plain Text (نص عادي)، HTML، أو Multipart (أجزاء متعددة). أخيرًا، هناك خياران تحت حقل Email Type، وهما يعتمدان على صيغة البريد الإلكتروني التي اخترتها. الأول Copy file to theme والذي من خلاله تقوم بنسخ قالب البريد الإلكتروني الحالي إلى مجلد القوالب للقيام بتخصيصه أكثر ممّا توفّره هذه الإعدادات. إذا قمت بالفعل بنسخ مجلّد woocommerce/templates/emails بالكامل إلى مجلد القوالب، فلا حاجة إلى نسخ القوالب بشكل منفصل مجددا. وفي تلك الحالة ستجد زر Delete template file بدلًا من Copy file to theme. الخيار الثاني هو View template ويمكنك من خلاله عرض شيفرة قالب البريد الإلكتروني الحالي وستتمكّن من تعديل القالب إذا قمت بالفعل بنسخه إلى مجلد القوالب. وبالرغم من أننا لا ننصحك بتغيير شفرة القوالب مباشرة من هذه النافذة، لكن تأكّد من امتلاك نسخ احتياطية لهذه القوالب والنقر على Save Changes بعد الانتهاء من تخصيص الشفرة إذا قمت بتعديل القالب من ووردبريس. كما ذكرنا سابقًا، تحتوي بقية إعدادات إشعارات البريد الإلكتروني على نفس الحقول التي قم بشرحها في إعدادات New Order. هناك بعض الاستثناءات في إعدادات إشعار الطلبات المكتملة، الطلبات المستردّة، وفواتير العملاء. هناك حقلان إضافيان في إعدادات Completed Order: هذه الحقول خاصّة بعنوان الإشعار (Subject (downloadable والعنوان الرئيسي (Email Heading (downloadable للمنتجات الرقمية القابلة للتنزيل. وفي إعدادات Refunded Order، هناك حقلان للعنوان وحقلان للعنوان الرئيسي: الحقلان الأولان هما للطلبات المستردّة بشكل جزئي Partial Refund والآخران للطلبات المستردّة بشكل كلي Full Refund، مما يتيح لك مستوى تحكّم جيّد في النص المرسل إلى العميل في الحالتين، الاسترداد الجزئي، والاسترداد الكلي. أما إعدادات Customer Invoice فتحتوي على حقلين إضافيين، الأول لعنوان إشعار الفاتورة المدفوعة (Email Subject (paid والثاني للعنوان الرئيسي لإشعار الفاتورة المدفوعة (Email Heading (paid: بعد الانتهاء من ضبط إعدادات كل إشعار، انقر على Save Changes لحفظ التغييرات. Email Sender Options من خيارات مرسل البريد الإلكتروني يمكنك التحكّم في اسم المرسل من حقل "From" Name بالإضافة إلى عنوان البريد الإلكتروني للمرسل "From" Address. من المهم ضبط هذه الإعدادات لأنّها ستُعرض على العملاء في صندوق الوارد لبريدهم الإلكتروني: على سبيل المثال، من خلال الإعدادات أعلاه، سيستلم العميل بريد إلكتروني من المرسل "My Store" صاحب عنوان البريد الإلكتروني " example@gmail.com". Email Template من هذه الخيارات يمكنك تخصيص قالب البريد الإلكتروني الافتراضي الذي يستخدمه WooCommerce: بإمكانك إدخال رابط لصورة الترويسة في حقل Header Image، أو رفع صورة من خلال المسار: Dashboard > Media > Add New وكذلك بإمكانك تخصيص نص هامش القالب بإدخال النص المرغوب في حقل Footer Text وسيظهر هذا النص في الجزء السفلي من جميع رسائل البريد الإلكتروني التي ترسلها. بعد ذلك يمكنك اختيار لون الأساس Base Color، لون الخلفية Background Color، لون خلفية متن البريد الإلكتروني Body Background Color، وكذلك لون نص المتن Body Text Color. بإمكانك معاينة القالب أثناء تخصيصه بالنقر على رابط Click here to preview your email template. بإمكانك عمل المزيد من التخصيصات المعقّدة بنسخ قالب البريد الإلكتروني إلى مجلد القوالب. قم بنسخ مجلد emails من على الامتداد woocommerce/templates/emails ولصقه في مجلد قالبك على الامتداد "theme name"/woocommerce/emails. اعلم فقط أنّ ذلك سيؤدي إلى إلغاء أي تخصيص قمت به من إعدادات قالب البريد الإلكتروني Email Template المذكورة. بعد الانتهاء من ضبط جميع الاعدادات انقر على Save Changes لحفظ التغييرات. إعدادات API من هذا التبويب تستطيع تفعيل REST API، بالإضافة إلى إنشاء Keys و Webhooks لتطبيقاتك. للوصول إلى تبويب إعدادات API اذهب إلى Dashboard > WooCommerce > Settings > API يحتوي هذا التبويب على ثلاثة تبويبات فرعية: Settings من هذا التبويب تستطيع تفعيل/إلغاء تفعيل REST API بتأشير/إلغاء تأشير الخيار Enable the REST API: إنّ هذا الخيار ضروري لكي تعمل تطبيقات للهاتف المحمول في متجرك. فهو يتيح للتطبيقات الخارجية معرفة أشياء مثل حالة المخزون، الطلبات، معلومات المنتجات، وغيرها الكثير. يُعتبر RESU API من الأجزاء الفعّالة في WooCommerce ويمكن أن يحقق الكثير من الأشياء الرائعة. Keys/Apps يتيح لك هذا التبويب إدارة التحكّم في الوصول إلى REST API: ترتبط المفاتيح keys بالمستخدمين على موقعك. ولإنشاء مفتاح انقر على Add Key: في حقل User، قم بتحديد المستخدم الذي تريد توليد مفتاح له، ثم قم بإضافة وصف في حقل Description. من قائمة Permissions قم بتحديد مستوى الوصول لهذا المفتاح. الخيارات المتاحة هي Read (قراءة)، Write (كتابة)، أو Read/Write (قراءة/كتابة). بعد ذلك انقر على زر Generate API Key، وسيقوم WooCommerce بتوليد مفتاح API لذلك المستخدم. بعد توليد المفتاح ستلاحظ وجود مفتاح المستهلك Consumer Key، الرمز السري للمستهلك Consumer Secret، رمز QR، بالإضافة إلى زر إبطال المفتاح Revoke API Key: قم بوضع مفتاح المستهلك والرمز السري للمستهلك في التطبيق الذي يستخدم WooCommerce API. وكذلك يجب أن يطلب ذلك التطبيق عنوان URL لمتجرك. Webhooks Webhooks هي عبارة عن أداة يمكنك استخدامها لإرسال إشعار حول حدث ما إلى عنوان URL من اختيارك. على سبيل المثال عند إنشاء منتج جديد، أو إنشاء قسيمة جديدة. وهي توفّر طريقة سهلة للتكامل مع الخدمات الخارجية وAPI الخارجية الأخرى التي تدعم Webhooks: سنقوم بإنشاء Webhook وهمي لاستخدامه لنشر منشور على منصة تواصل اجتماعي من اختيارنا عندما نقوم بإنشاء منتج جديد. وهذه من الطرق البسيطة للترويج لمنتجاتنا الجديدة عبر الإنترنت بصورة تلقائية. انقر على زر Add Webhook: قم بإدخال عنوان مناسب في حقل Title ثم حدّد الحالة من قائمة Status حسب حاجتك. خيارات الحالة المتوفّرة هي Active (مفعّل)، Paused (متوقف مؤقتًا)، أو Disabled (غير مفعّل). إذا رغبت في تشغيل Webhook تأكّد من اختيار الحالة Active. الخطوة التالية هي تحديد الموضوع من قائمة Topic، ويقصد به الحدث الذي سيشغّل Webhook. تتضمن القائمة العديد من الخيارات، مثل إنشاء طلب Order Created، حذف منتج Product Deleted، أو تحديث عميل Customer Updated. وكذلك يوجد خيار تحديد موضوع مخصص Custom لغرض إنشاء Webhook أكثر تقدّمًا. سنحدد Product Created مثلا. الحقل التالي هو Delivery URL ويُستخدم لتحديد العنوان الذي سيتم توصيل حمل Webhook إليه. في مثالنا هذا سنبحث في توثيق المطوّرين لمنصة التواصل الاجتماعي التي اخترناها للعثور على Webhook يمكننا استخدامه للتوصيل. في حقل Secret قم بإعداد مفتاح سرّي يدويًا، أو اترك الحقل فارغًا وسيتم استخدام مفتاح Consumer Secret للمستخدم الحالي والذي يوجد في قسم API لحساب المستخدم على WooCommerce. بعد الانتهاء من ضبط الإعدادات أعلاه، انقر على Save Webhook لبدء تشغيله ورصد المنتجات الجديدة. عندما يُشغّل Webhook بإمكانك العودة إلى هذه النافذة لمشاهدة التسجيلات في قسم Webhook Logs. إذ ستكون هناك مدخلات تبيّن وقت تشغيله وما هي استجابات الخدمات الأخرى التي تتكامل معها. وهذه التسجيلات توفّر لك طريقة سهلة لاختبار Webhook وإصلاحه. لن نكون قادرين على تغطية جميع التفاصيل التقنية المتعلّقة بالتكامل مع الخدمات الأخرى، لأنها ستكون معقّدة جدًا بالنسبة لغرض هذا الدرس. بهذا تكون قد تمكّنت من ضبط جميع إعدادات متجرك الإلكتروني على WooCommerce. سنغطّي في الدرس القادم -إن شاء الله- كيفية إنشاء المنتجات وسنلقي نظرة عامة على أنواعها.
  13. إذا كانت هذه هي المرة الأولى التي تقرأ فيها حول إعدادات WooCommerce ننصحك بالرجوع إلى الدروس السابقة لتطّلع أولا على طريقة تثبيت الملحق وتهيئته، وتتعرّف على كيفية ضبط إعدادات المنتجات، الضرائب، والدفع. سنغطّي في هذا الدرس خطوات ضبط إعدادات الشحن العامة، بالإضافة إلى إعدادات كل طريقة من طرق الشحن المتوفّرة. يمكنك تجاوز ضبط إعدادات الشحن إذا كانت المنتجات التي تبيعها رقمية جميعها. فمن البديهي أن لا تكون هناك حاجة لشحنها. ابدأ بتسجيل الدخول إلى موقعك ثم الذهاب إلى: Dashboard > WooCommerce > Settings > Shipping خيارات الشحن Shipping Options تحت هذا التبويب الفرعي ستجد مجموعة من خيارات الشحن العامة: قم بتأشير الخيار الأول، Enable Shipping لتمكين شحن الطلبات. قم بتأشير الخيار الثاني، Enable the shipping calculator on the cart page لتمكين العملاء من رؤية رسوم الشحن للسلع الموجودة على السلّة وحسب قواعد الشحن الخاصة بمتجرك. بإمكانهم حساب رسوم الشحن باختيار اسم البلد، المحافظة/الولاية، والرمز البريدي Zip Code ومن ثم النقر على Update Totals لمعرفة مقدار الرسوم: الخيار الثالث هو Hide shipping costs until an address is entered، والذي عند التأشير عليه سيقوم بإخفاء جميع كلف الشحن حتّى يتم إدخال العنوان. فإذا كان نسبة الشحن التي تستخدمها تُحسب على أساس موقع العميل، لن تظهر كلفة الشحن ما لم يتم إدخال تفاصيل الموقع عند الدفع. من مجموعة خيارات Shipping Destination بإمكانك تحديد العنوان الذي سيتم استخدامه كعنوان العميل الافتراضي. بإمكانك اختيار أما عنوان الشحن Default shipping address أو عنوان الفوترة Default billing address كخيارات افتراضية، أو الشحن إلى عنوان الفوترة الخاص بالعميل فقط Only ship to the customer's billing address. بعد ذلك حدد المواقع التي تريد تمكين الشحن إليها من قائمة (Restrict shipping to Location(s. بإمكانك اختيار الشحن لجميع البلدان التي تبيع لها Ship to all countries you sell to، والذي يتيح الشحن إلى مواقع البيع التي قمت بتحديدها في الإعدادات العامة General، أو الشحن لجميع البلدان Ship to all countries (وهذا الخيار واضح من اسمه)، أو الشحن إلى بلدان محددة Ship to specific countries only والذي عند اختياره سيظهر حقل يساعدك على اختيار البلدان التي تريد الشحن إليها: القسم الأخير في هذا التبويب هو طريقة الشحن Shipping Method: من هذا القسم يمكنك معرفة أسماء طرق الشحن، رموزها التعريفية ID، أولوية استخدامها، وكذلك معرفة فيما إذا كانت مفعّلة أو لا. بإمكانك التحكم في ترتيب ظهور كل طريقة من طرق الشحن في صفحة الدفع بالنقر على أيقونة (≡) بجانب اسم الطريقة، ومن ثم السحب إلى الأعلى أو الأسفل والإفلات عند الترتيب المرغوب. وباستخدام حقول Selection Priority تستطيع اختيار الطريقة التي تُحدد أولًا بشكل افتراضي. ستُحدد الطريقة ذات الأولوية رقم 1 بشكل افتراضي عندما يقوم العميل بالدفع. وإذا لم تكن الطريقة الأولى مُتاحة لذلك العميل، سيتم تحديد الطريقة ذات الأولوية رقم 2 بشكل افتراضي عند الدفع، وهكذا. إذا كان لأكثر من طريقة شحن نفس الأولوية، سيتم تحديد الطريقة ذات الكلفة الأقل كخيار افتراضي. بإمكانك الوصول إلى إعدادات كل طريقة على حدة بالنقر على اسمها، أو الذهاب إلى أعلى الصفحة حيث ستجد إعدادات كل طريقة في تبويب فرعي منفصل. وسنغطّي إعدادات جميع طرق الشحن في الفقرات التالية. سعر الشحن الموحد Flat Rate ويُقصد بـ flat rate سعر الشحن الثابت الموحّد الذي لا يتغيّر وفق أشياء محددة. أي أنّه باستخدام هذه الطريقة ستقوم بإضافة سعر شحن واحد لكل الطلبات على متجرك. انقر على تبويب Flat rate الفرعي لعرض الإعدادات: قم بتأشير الخيار Enable this shipping method لتفعيل الشحن بهذه الطريقة. بعدها قم بإضافة عنوان للطريقة في حقل Method Title إن رغبت في تغيير العنوان الافتراضي. الخطوة التالية هي تحديد البلدان التي تريد إتاحة استخدام هذه الطريقة فيها. بإمكانك تحديد الخيار All Allowed Countries والذي يعني إتاحة هذه الطريقة لجميع البلدان التي تبيع لها والتي حددتها في الإعدادات العامة General، أو Specific Countries والذي عند تحديده سيظهر لك حقل جديد يساعدك على اختيار البلدان التي تريد إتاحة طريقة الشحن هذه فيها: من قائمة Tax Status يمكنك تحديد فيما إذا كانت طريقة الشحن هذه خاضعة للضرائب Taxable، أو لا None. في حقل الكلفة Cost قم بإدخال كلفة استخدام طريقة الشحن الحالية لكل طلب. بإمكانك إدخال رقم عادي ليمثّل رسوم الشحن، مثل 5$، لكن هناك المزيد مما يمكنه فعله في هذا الحقل. بإمكانك إدخال عمليات حسابية لمساعدتك على حساب الكلف بصورة صحيحة. فهذا الحقل يتقبّل الصيغ الرياضية بالإضافة إلى بعض العناصر النائبة placeholders. من العناصر النائبة المتاحة هي الكميّة والتي تُكتب بالشكل التالي: [qty] والرسوم التي تُكتب بالشكل التالي: [fee] على سبيل المثال، إذا أردنا فرض كلفة شحن تساوي 10$، ومن ثم إضافة دولارين لكل سلعة في السلة، نستخدم العنصر النائب للكمية وبالشكل التالي: هذا مجرّد مثال بسيط، حيث هناك الكثير من الطرق لإعداد رسوم الشحن باستخدام العناصر النائبة والعمليات الرياضية. ستكون إعدادات طريقة Flat Rate قد انتهت إذا لم تكن تستخدم فئات شحن shipping classes، انقر Save Changes لحفظ التغييرات. أما إذا كنت تستخدم فئات شحن في متجرك، سيظهر لك قسم جديد في هذه الصفحة بعنوان Shipping Class Costs: ستلاحظ في هذا القسم وجود حقل كلفة لكل فئة شحن قمت بإنشائها سابقًا في إعدادات الضريبة، بالإضافة إلى حقل للكلفة في حالة عدم وجود فئات شحن No Shipping Class Costs. هذه الحقول تعمل بنفس طريقة حقل الكلفة Cost، تأكّد فقط من ضبط هذه الحقول بشكل صحيح إذا كنت تريد استخدام رسوم مختلفة لفئة الشحن الواحدة. قد تتساءل عن الفرق بين حقل No Shipping Class Costs، وحقل Cost المذكور أعلاه، حيث أنّ كليهما خاص بحالة عدم استخدام فئات شحن. الحقل الأول، No Shipping Class Costs مفيد إذا كنت ستستخدم خيار Per Class أدناه، وبخلاف ذلك أدخل كلفة الشحن في حقل Cost. من قائمة Calculation Type حدد طريقة حساب رسوم الشحن. لديك خياران، الأول، Per Class، ويُستخدم لفرض رسوم الشحن لكل فئة شحن، مما يعني أنّ كلفة فئة الشحن ستُضاف إلى كل سلعة في السلة حسب فئة الشحن لتلك السلعة. على سبيل المثال، لنفترض أنّه لديك سلعتان في السلة كل منها ذات فئة شحن مختلفة؛ فئة الشحن الأولى كلفتها 5$، وفئة الشحن الثانية كلفتها 8$. في هذه الحالة سيصبح إجمالي كلفة الشحن مساويًا لـ 13$. أما عند تحديد الخيار الثاني، Per Order، فسيتم البحث عن أعلى كلفة لفئات الشحن ومن ثم استخدامها ككلفة الشحن الثابتة حتّى وإن اختلفت فئات الشحن للسلع في السلّة. انقر على Save Changes لحفظ التغييرات. الشحن المجاني Free Shipping الشحن المجاني من الطرق الرائعة التي تشجّع العملاء على إنفاق المزيد من المال. على سبيل المثال اعرض إمكانية الحصول على شحن مجاني للطلبات التي تزيد قيمتها عن 100$. للوصول إلى إعدادات طريقة الشحن المجاني انقر على تبويب Free Shipping الفرعي: قم بتأشير الخيار Enable Free Shipping لتفعيل طريقة الشحن هذه. بعدها قم بإدخال عنوان الطريقة الذي سيظهر لعملائك عند الدفع من حقل Title، ثم حدّد البلدان التي تريد إتاحة هذه الطريقة فيها من قائمة Availability. وكما في الطريقة السابقة بإمكانك تحديد الخيار All Allowed Countries والذي يعني إتاحة هذه الطريقة لجميع البلدان التي تبيع لها والتي حددتها في الإعدادات العامة General، أو تحديد Specific Countries والذي عند تحديده سيظهر لك حقل جديد يساعدك على اختيار البلدان التي تريد إتاحة طريقة الشحن هذه فيها. من قائمة Free Shipping Requires حدّد الشرط الذي يجب تحقيقه لتمكين الشحن المجاني. الخيارات المتاحة هي تمكين الشحن المجاني إذا كان العميل يملك قسيمة شحن مجاني صالحة A valid free shipping coupon، عند حد أدنى لمبلغ لطلب (يُحدد في الحقل السفلي) A minimum order amount، عند حد أدنى لمبلغ الطلب أو قسيمة صالحة A minimum order amount OR coupon، أو عند حد أدنى لمبلغ الطلب وقسيمة صالحة A minimum order amount AND coupon. إذا اخترت أحد الخيارات التي تحتوي على حد أدنى لمبلغ الطلب، تأكّد من إدخال قيمة الحد الأدنى لمبلغ الطلب في حقل Minimum Order Amount الأخير. انقر على Save Changes لحفظ التغييرات. International Flat Rate تستند طريقة International Flat Rate على طريقة Flat Rate، وهي تتيح إمكانية تحديد سعر شحن قياسي لكل طلب، لكل سلعة، أو لكل فئة شحنة لغرض التوصيل الدولي. للوصول إلى إعدادات هذه الطريقة انقر على تبويب International Flat Rate الفرعي: قم بتأشير الخيار الأول، Enable this shipping method لتفعيل هذه الطريقة ثم قم بإدخال العنوان المرغوب في حقل Title. من قائمة Availability حدّد البلدان التي تريد إتاحة هذه الطريقة فيها. بإمكانك تحديد بلدان محددة باختيار الخيار Selected Countries، ثم إدخال أسماء هذه البلدان في حقل Specific Countries. أو استثناء بلدان محدّدة باختيار الخيار Excluding Selected Countries وإدخال أسماء هذه البلدان في حقل Specific Countries. من قائمة Tax Status يمكنك تحديد فيما إذا كانت طريقة الشحن هذه خاضعة للضرائب Taxable، أو لا None. في حقل الكلفة Cost قم بإدخال رسوم الشحن لكل طلب باستخدام طريقة International Flat Rate. بإمكانك إدخال رقم عادي ليمثّل رسوم الشحن، مثل 5$، لكن هناك إمكانية استخدام العناصر النائبة والعمليات الحسابية كما في طريقة Flat Rate. من العناصر النائبة المتاحة هي الكميّة والتي تُكتب بالشكل التالي: [qty] والرسوم التي تُكتب بالشكل التالي: [fee] على سبيل المثال، إذا أردنا فرض كلفة شحن أساسية تساوي 12$، ومن ثم إضافة 3 دولار لكل سلعة في السلة، نستخدم العنصر النائب للكمية وبالشكل التالي: هذا مجرّد مثال بسيط، حيث هناك الكثير من الطرق لإعداد رسوم الشحن باستخدام العناصر النائبة والعمليات الرياضية. ستكون إعدادات طريقة International Flat Rate قد انتهت إذا لم تكن تستخدم فئات شحن shipping classes، انقر Save Changes لحفظ التغييرات. أما إذا كنت تستخدم فئات الشحن، سيظهر لك قسم جديد في هذه الصفحة بعنوان Shipping Class Costs: ستلاحظ في هذا القسم وجود حقل كلفة لكل فئة شحن قمت بإنشائها سابقًا في إعدادات الضريبة، بالإضافة إلى حقل للكلفة في حالة عدم وجود فئات شحن No Shipping Class Costs. هذه الحقول تعمل بنفس طريقة حقل الكلفة Cost، تأكّد فقط من ضبط هذه الحقول بشكل صحيح إذا كنت تريد استخدام رسوم مختلفة لفئة الشحن الواحدة. من قائمة Calculation Type حدّد طريقة حساب رسوم الشحن. لديك خياران، الأول، Per Class، ويُستخدم لفرض رسوم الشحن لكل فئة شحن على حدة، مما يعني أنّ كلفة فئة الشحن ستُضاف إلى كل سلعة في السلة حسب فئة الشحن لتلك السلعة. على سبيل المثال، لنفترض أنّ لديك سلعتان في السلة كل منها ذات فئة شحن مختلفة؛ فئة الشحن الأولى كلفتها 5$، وفئة الشحن الثانية كلفتها 8$. في هذه الحالة سيصبح إجمالي كلفة الشحن مساويًا لـ 13$. أما عند تحديد الخيار الثاني، Per Order، فسيتم البحث عن أغلى كلفة لفئة الشحن ومن ثم استخدامها ككلفة الشحن الثابتة حتّى وإن اختلفت فئات الشحن للسلع في السلّة. انقر على Save Changes لحفظ التغييرات. طريقة الشحن المحلية Local Delivery هذه الطريقة هي من طرق الشحن البسيطة لتسليم الطلبات محليًا. يمكن تحديد الرسوم كنسبة مئوية من إجمالي كلف السلع في السلّة، كقيمة ثابتة، أو يمكن أن تكون مجانية. للوصول إلى إعدادات هذه الطريقة انقر على تبويب Local Delivery الفرعي: قم بتأشير الخيار Enable local delivery لتمكين خدمة التوصيل المحلي، ثم قم بإدخال العنوان المرغوب في حقل Title. في قائمة نوع الرسوم Fee Type لديك ثلاثة خيارات. إما اختيار قيمة رسوم ثابتة لكل الطلبات Fixed amount، أو كنسبة مئوية من إجمالي كلف السلع في السلّة Percentage of cart total، أو كقيمة ثابتة لكل منتج Fixed amount per product. سيحدد ما تختاره من هذه القائمة كيفية تطبيق رسوم التوصيل. قم بإدخال رسوم التوصيل في حقل Delivery Fee. في حقل Allowed ZIP/Post Codes قم بإدخال الرموز البريدية للمواقع التي يُتاح في التوصيل المحلي. قم بفصل الرموز البريدية باستخدام الفاصلة (,) أو استخدم رموز البدل wildcards أو الأنماط patterns. من الأمثلة على استخدام رموز البدل wildcards كتابة P* في حقل الرمز البريدي، وهذا يعني مطابقة جميع الرموز البريدية التي تبدأ بالحرف P. ومن الأمثلة على استخدام الأنماط كتابة (NG1___ (N، G، 1، وثلاث خطوط سفلية underscore وهذا يعني أنّه سيطابق رموز بريدية مثل NG1 1AA، لكن لا يطابق رمزًا مثل NG10 1AA. الخيار الأخير Method availability لتحديد المناطق التي تُتاح فيها هذه الخدمة. وكبقية الطرق السابقة بإمكانك تحديد الخيار All Allowed Countries والذي يعني إتاحة هذه الطريقة لجميع البلدان التي تبيع لها والتي حددتها في الاعدادات العامة General، أو الخيار Specific Countries والذي عند تحديده سيظهر لك حقل جديد يساعدك على اختيار البلدان المحددة التي تريد إتاحة طريقة التوصيل المحلي فيها. انقر على Save Changes لحفظ التغييرات. Local Pickup تتيح هذه الطريقة للعملاء إمكانية الذهاب وأخذ طلباتهم بأنفسهم. لتفعيل هذه الطريقة انقر على تبويب Local Pickup الفرعي ثم قم بتأشير الخيار Enable Local Pickup: قم بإدخال عنوان مناسب للطريقة في حقل Title، وفي حقل Zip/Post Codes قم بإدخال الرموز البريدية للمواقع التي ترغب في تمكين هذه الطريقة فيها، وافصل بين كل رمز وآخر باستخدام الفاصلة (,). وكذلك يمكنك استخدام رموز البدل wildcards أو الأنماط patterns كما في الطريقة السابقة. من الأمثلة على استخدام رموز البدل wildcards كتابة P* في حقل الرمز البريدي، وهذا يعني مطابقة جميع الرموز البريدية التي تبدأ بالحرف P. ومن الأمثلة على استخدام الأنماط كتابة (NG1___ (N، G، 1، وثلاث خطوط سفلية underscore وهذا يعني أنّه سيطابق رموز بريدي مثل NG1 1AA، لكن لا يطابق رمزًا مثل NG10 1AA. استخدم الخيار الأخير Method availability لتحديد المناطق التي تُتاح فيها طريقة Local Pickup. وبالضبط كسابقاتها من الطرق، بإمكانك تحديد الخيار All Allowed Countries والذي يعني إتاحة هذه الطريقة لجميع البلدان التي تبيع لها والتي حددتها في الاعدادات العامة General، أو الخيار Specific Countries والذي عند تحديده سيظهر لك حقل جديد يساعدك على اختيار البلدان التي تريد إتاحة هذه الطريقة فيها. انتهى درس اليوم، لكن ما زالت هناك إعدادات أخرى تحتاج للضبط، نكملها في الدرس القادم -إن شاء الله-.
  14. هذا الدّرس يفترض بأنّك قمت بتنصيب WooCommerce وقمت بجملة من الإعدادات الأولية عليه. إذا لم تقم بذلك بعد فأنصحك بقراءة الدّرس الأول قبل مواصلة القراءة. إعدادات المنتجات Products هناك الكثير من الإعدادات المهمة في هذا التبويب. فمنه ستقوم بتحديد كيفية قياس أبعاد المنتجات، كيفية عرضها، كيفية الجرد وتتبّع المخزون، بالإضافة إلى تعيين إعدادات المنتجات القابلة للتنزيل. لنبدأ بالتبويب الفرعي الأول، اذهب إلى: Dashboard > WooCommerce > Products > General من حقلي Weight Unit، و Dimensions Unit حدّد وحدات قياس الوزن والحجم على التوالي. يمكنك أيضًا تفعيل تقييم المنتج مع المراجعة بتأشير الخيار Enable rating on reviews. وعند تأشيره ستظهر ثلاثة خيارات إضافية: قم بتأشير الخيار Ratings are required to leave a review إذا كنت ترغب في عدم تمكين المستخدم من إضافة مراجعة إلا بعد أن يقوم بتقييم المنتج. والخيار Show "Verified Owner" label for customer reviews لإضافة علامة "Verified Owner" (مشترٍ موثوق) مع مراجعة المشتري. والمشتري الموثوق هو الذي قام بتسجيل الدخول باستخدام حساب وشراء المنتج. وإذا كنت لا ترغب في السماح بإضافة مراجعات سوى بواسطة المشترين الموثوقين قم بتأشير الخيار Only allow reviews from verified owners. بعد الانتهاء انقر Save Changes لحفظ التغييرات. لننتقل الآن إلى تبويب Display الفرعي: من قائمة Shop Page حدّد الصفحة التي تريدها أن تكون الصفحة الافتراضية لمتجرك. وليس من الضروري أن تكون صفحة المتجر التي قام WooCommerce بإنشائها عند التثبيت. وبإمكانك تخطي هذه الخطوة إن كنت ترغب في استخدام طريقة أخرى لعرض المنتجات. من قائمة Shop Page Display حدّد فيما إذا كنت ترغب في عرض جميع المنتجات Show Products، عرض الفئات والفئات الفرعية فقط Show categories and subcategories، أو عرض كليهما. من قائمة Default Category Display حدّد فيما إذا كنت ترغب في عرض جميع المنتجات Show Products، عرض الفئات الفرعية Show subcategories، أو عرض كليهما. من قائمة Default Product Sorting حدّد كيفية فرز المنتجات. والخيارات المتوفرة هي الفرز الافتراضي بترتيب مخصص + الاسم Default Sorting، الفرز حسب رواج المنتج Popularity، حسب متوسط التقييم Average Rating، حسب الأحدث Most Recent، أو حسب السعر (تصاعديًا/تنازليًا) Price. الخيارات التالية هي خاصة بأسلوب الإضافة إلى السلة. حدّد الخيار Redirect to cart page after successful addition إذا كنت تريد توجيه المستخدم تلقائيًا إلى صفحة السلة عند إضافة منتج، أو الخيار Enable AJAX add to cart buttons on archives لإضافة المنتج إلى سلة المشتري دون مغادرة صفحة المتجر. لننتقل إلى مجموعة صور المنتجات Product Images: من المهم ضبط هذه الإعدادات بصورة صحيحة، لأننا نريد أن تكون هذه الإعدادات متطابقة مع أحجام الصور التي يستوعبها القالب الذي تستخدمه. أحجام صور الكتالوج Catalog Image Sizes هي التي تُستخدم على صفحة متجرك، أو صفحة الأرشيف لأي منتج. وبصورة عامة أي صفحة تعرض قائمة من المنتجات ستستخدم حجم الصورة هذا: مصدر الصورة أما صورة المنتج المفرد Single Product Image فهي تلك التي تشاهدها عندما تنقر على المنتج لعرضه بصفحة مفردة على المتجر، أو الصورة التي اخترتها لتمثل المنتج featured image عندما قمت بإنشائه: مصدر الصورة وأخيرًا Product Thumbnails هي الصور المصغّرة التي تظهر تحت صورة المنتج المفرد لكل منتج (كما موضحة في الصورة أعلاه). قم بتحديد أحجام هذه الصور من الحقول الخاصة بها. بالإضافة إلى ذلك، يمكنك تأشير الخيار Enable Lightbox for product images لعرض الصورة بشكل أكبر عند النقر عليها في المتجر. انقر Save Changes لحفظ التغييرات، ثم انتقل إلى تبويب Inventory: إذا كنت لا تقوم بتتبّع المخزون لا تقم بتأشير الخيار Enable stock management، فبكل الأحوال سيكون عديم الفائدة. أما ذا كنت تقوم بذلك قم بتأشيره، ثم حدّد الفترة الزمنية لإلغاء الطلبات غير المدفوعة بإدخال الزمن بالدقائق في حقل Hold Stock. سيتم إلغاء الطلب غير المدفوع تلقائيًا بعد انتهاء الفترة الزمنية المحدّدة. يمكنك ترك الحقل فارغًا إذا لم تكن ترغب في تفعيل هذا الخيار. الخطوة التالية هي تحديد فيما إذا كنت تريد استلام تنبيهات حول المنتجات التي قارب مخزونها على الانتهاء Enable low stock notification أو التي نفد مخزونها Enable out of stock notification عبر رسالة إلى عنوان البريد الإلكتروني الذي تحدّده في حقل (Notification Recipient(s. بعدها قم بإدخال عدد المنتجات الذي يبدأ منه إشعار المخزون القليل في حقل Low Stock Threshold، وعدد المنتجات الذي يبدأ منه إشعار المخزون النافد في حقل Out of Stock Threshold. وستظهر هذه الإشعارات على الواجهة الأمامية لموقعك على المنتجات التي قارب مخزونها على النفاد أو نفدت بالفعل: مصدر الصورة وأخيرًا قم بتأشير الخيار Hide out of stock items from the catalog لإخفاء المنتجات التي نفد مخزونها من الكتالوج، وحدّد طريقة عرض مخزون المنتج على الصفحة من قائمة Stock Display Format. انقر على Save Changes وانتقل إلى تبويب المنتجات القابلة للتنزيل Downloadable Products: من هذا التبويب تتحكم في كيفية توفير الملفات القابلة للتنزيل للمشترين. هناك ثلاثة خيارات لطريقة تنزيل الملفات يمكنك تحديدها من قائمة File Download Method. عند تحديد الخيار الأول Force Downloads ستقوم بتمكين تحميل الملفات عبر سكربت PHP، وستكون هذه الملفات غير متاحة لغير المشترين، بالإضافة إلى إخفاء الروابط المباشرة. لكن إذا كانت لديك ملفات كبيرة الحجم أو خادوم ضعيف، قد تواجه مشاكل Timeout عند استخدام هذه الطريقة. الخيار الثاني X-Accel-Redirect/X-Sendfile ، وهو الأكثر فعالية ويستخدم خادوم Apache للتنزيل، مما يوفّر لك أداء أفضل، كما أنّ ملفاتك سيتم حمايتها بواسطة ملف htaccess. أما عند تحديد الخيار الأخير Redirect Only سيقوم رابط التنزيل بتوجيه المستخدم إلى الملف، وستكون الملفات غير محمية من الوصول الخارجي. ولذلك هذه الطريقة هي الأقل أمنًا في حال قام المستخدم بمشاركة رابط التنزيل. ملاحظة: يفضّل أن تستخدم أغلب المتاجر إحدى الطريقتين، الأولى أو الثانية، لحماية الملفات من الوصول الخارجي. ويمكن استخدام الطريقة الثالثة فقط في حالة واجهتك مشاكل، أو إذا كنت لا تمانع في عدم حماية التنزيلات. وأخيرًا، قم بتأشير الخيار Downloads require login لإجبار المستخدم على تسجيل الدخول قبل أن يقوم بتنزيل المنتج الذي قام بشرائه، علما أنّ هذا الخيار لا يطبّق إذا قمت بتفعيل خيار Guest Checkout، إذ أنّه عند تفعيل هذا الخيار سيستلم المشتري رابط التنزيل على البريد الإلكتروني الذي قام بإدخاله عند الطلب. ثم قم بتأشير الخيار Grant access to downloadable products after payment إذا كنت ترغب في تمكين المستخدم من الوصول إلى التنزيلات عندما تكون الطلبات قيد التجهيز Processing بدلًا من كونها مكتملة Completed. انقر Save Changes لحفظ التغييرات.
  15. إنّ ضبط إعدادات الضريبة هي من أولى مهامك عندما تقوم بإعداد متجرك. فعلى الأرجح لدى مشروعك التجاري التزامات قانونية لدفع الضرائب، وهنا في WooCommerce توجد العديد من الخيارات لإعداد الضرائب وجمعها وبالطريقة التي تريدها. تأكد أولًا من البحث حول متطلبات المتعلّقة بالضرائب في بلدك، في ولايتك، أو محافظتك. للوصول إلى إعدادات الضريبة اذهب إلى لوحة التحكم: Dashboard > WooCommerce > Tax > Tax Options الخيار الأول هو تفعيل الضريبة وحسابات الضريبة Enable taxes and tax calculations. بإمكانك إبقاء الخيار غير مؤشر عند عدم وجود ضرائب. الخيار الثاني، Price Entered wit Tax، مهم جدًا عندما تقوم بإدارة الضرائب في متجرك. فهو يحدّد كيفية إدخال الأسعار لاحقًا عند إنشاء المنتجات. بإمكانك تحديد الخيار Yes, I will enter prices inclusive of tax والذي يعني أنّ جميع أسعار الكتالوجات catalogs تم إدخالها باستخدام معدل الضريبة للمنطقة التي يقع فيها متجرك. أو الخيار الآخر No, I will enter prices exclusive of tax والذي يعني أنّ جميع أسعار الكتالوجات يجب أن يتم إدخالها غير شاملة للضريبة. بعدها قم بتحديد على أي أساس يتم حساب الضريبة من قائمة Calculate Tax Based On، سواء كانت على أساس عنوان الفوترة للعميل Customer billing address، على أساس عنوان الشحن للعميل Customer shipping address (وهو الخيار الافتراضي)، أو على أساس عنوان موقع المتجر Shop Base Address. لاحظ أنّه يجب ملء حقل العنوان لكي يتم حساب الضريبة إذا كان معدل الضريبة لديك يختلف من موقع إلى آخر. أما الخيار الخاص بفئة ضريبة الشحن Shipping Tax Class فيمكن إبقاؤه كما هو دون تغيير بالنسبة لأغلب المتاجر. وهذا يعني أنّ فئات الضريبة وكلفها يتم تحديدها حسب السلع الموجودة في السلة. على سبيل المثال، إذا تم تعيين السلعة في السّلة كمنتج منخفض السعر سيتم استخدام المعدل المنخفض Reduced Rate. أما إذا اختلف الحال في منطقتك قم باختيار فئة مختلفة للضريبة. قم بتأشير الخيار Round tax at subtotal level, instead of rounding per line إذا كان التقريب يتم بعد إيجاد المجموع الفرعي حسب قانون الضرائب في منطقتك. وإذا لم تقم بتأشيره سيتم تقريب قيمة الضريبة في كل سطر. الخيار التالي هو فئات الضريبة الإضافية Additional Tax Classes، ويقصد بها، كما هو واضح من الاسم، فئات معدلات الضريبة الإضافية التي يمكنك استخدامها بغض النظر عن المعدلات القياسية Standard Rates. في أغلب الأحيان يتم استخدام فئة المعدلات القياسية. لكن إذا كنت تبيع سلعًا تتطلب فئات ضريبة مختلفة قم بإدخالها في هذا الحقل. ستلاحظ أنّ كل فئة تقوم بإضافتها سيتم إدراجها في الأعلى مع مجموعة خيارات الضريبة. عند النقر على كل فئة ستُعرض المعدلات المخصصة الحالية، وستتمكن من إضافة معدلات جديدة لتلك الفئة: الخيار التالي من خيارات الضريبة هو Display Prices in the Shop، والذي يحدّد كيفية عرض الأسعار في متجرك، باستثناء صفحة السلّة Cart وصفحة الدفع Checkout. اختر فيما إذا كنت تريد عرض الأسعار شاملة للضريبة Including Tax، أو غير شاملة للضريبة Excluding Tax. الخيار الذي بعده Display prices during cart and checkout يحدّد كيفية عرض الأسعار في صفحتي السّلة والدفع، وهو يعمل بشكل مستقل عن أسعار الكتالوج. من حقل Price Display Suffix قم بإضافة عبارة لاحقة تظهر بعد الأسعار. على سبيل المثال يمكنك إضافة عبارة "شاملة لضريبة المبيعات" بعد الأسعار، إن كانت كذلك. وأخيرًا، يمكنك اختيار طريقة عرض إجمالي الضرائب من قائمة Display Tax Totals. حدّد الخيار As a single total لعرض ضريبة واحدة، أو الخيار Itemized لعرض كلفة الضريبة لكل سلعة. مثال: إنشاء معدل ضريبة لإضافة معدل ضريبة إلى أحد الفئات، انقر على الفئة، ولتكن Standard Rates مثلا، ثم انقر على Insert Row: يحتوي كل معدّل على الخوّاص التالية: رمز البلد Country Code: وهو رمز يتكون من حرفين كبيرين باللغة الإنجليزية، مثل SA للمملكة العربية السعودية. يمكنك ترك هذا الحقل فارغًا لتطبيق المعدل على جميع الدول. رمز المحافظة/الولاية State Code: وهو رمز يتكون من حرفين أيضًا، مثل AZ لولاية أريزونا في الولايات المتحدة الأمريكية. اترك هذا الحقل فارغًا لتطبيق المعدل على جميع المحافظات/الولايات. الرمز البريدي ZIP/Post Code: قم بإدخال الرموز البريدية لهذا المعدل. استخدم الفاصلة المنقوطة (;) للفصل بينها، واستخدم أحرف البدل wildcards لمطابقة العديد من الرموز البريدية. على سبيل المثال، عند استخدام PE* سيتم مطابقة جميع الرموز البريدية التي تبدأ بالحرفين PE. كما بإمكانك استخدام النطاقات الرقمية (مثل 2000-3000). اترك هذا الحقل فارغًا لتطبيقه على جميع الرموز البريدية. المدينة City: ادخل اسم المدينة/المدن لهذا المعدل، وافصل بين مجموعة المدن باستخدام الفاصلة المنقوطة. اترك الحقل فارغًا لتطبيقه على جميع المدن. المعدل Rate: قم بإدخال معدل الضريبة كنسبة مئوية حتى أربعة مراتب عشرية. مثلًا 20.000 لمعدل ضريبة 20% أو 7.000 لمعدل ضريبة 7%. اسم الضريبة Tax Name: في هذا الحقل قم بإدخال اسم للضريبة. مثلًا "ضريبة المبيعات". الأولوية Priority: استخدم هذا الحقل لتحديد معدل الضريبة الذي سيُطبّق في المناطق التي تملك أكثر من معدل ضريبة، وسيتم استخدام المعدل ذو الأولوية الأعلى. لتحديد العديد من معدلات الضريبة لنفس المنطقة، يجب أن تحدّد أولوية مختلفة لكل معدل. على سبيل المثال، إذا كانت للمدينة "س" معدل ضريبة 7%، وللمدينة "ص" معدل ضريبة 12%، وكلا المدينتين تقع في نفس المنطقة. يجب أن تقوم بتحديد المعدل الذي سيتم اختياره أولًا (أي الأولوية =1) وحسب الأهمية. المعدل المركّب Compound: قم بتأشير هذا الخيار إذا كان المعدّل مركّب (أي يطبّق فوق كل الضرائب السابقة). الشحن Shipping: قم بتأشير هذا الخيار إذا كان المعدل يطبّق على الشحن أيضًا. بعد ملء الحقول انقر على Save Changes. بإمكانك إنشاء معدلات إضافية عند الحاجة بالنقر على Insert Row. وكذلك بإمكانك إنشاء معدلات في الفئات الأخرى التي قمت بإضافتها. تابع معنا الدرس القادم للتعرّف على كيفية ضبط إعدادات المحاسبة/الدفع.
  16. في الدروس السابقة قمنا بتغطية خطوات تنصيب WooCommerce على مواقع ووردبريس، بالإضافة إلى ضبط إعدادات المنتجات Products وضبط إعدادات الضرائب Taxes. وفي هذا الدرس سنواصل ما بدأناه ونناقش خيارات الدفع للمتاجر على WooCommerce. توجد العديد من بوابات الدفع checkout gateways التي يتم تثبيتها تلقائيًا مع WooCommerce وكل بوابة لها إعداداتها الخاصة حيث يمكنك إدارة طرق الدفع على متجرك. لنلقِ نظرة عليها: قم أولا بتسجيل الدخول إلى موقعك ثم اذهب إلى: Dashboard > WooCommerce > Settings > Checkout خيارات الدفع العامة توجد هذه الخيارات ضمن تبويب Checkout Options الفرعي، والذي يحتوي على عدة أقسام: القسائم Coupons إذا كنت تنوي استخدام القسائم قم بتأشير الخيار Enable the use of coupons (سنشرح طريقة إنشاء القسائم في درس لاحق -إن شاء الله-). بعدها قم بتأشير الخيار Calculate coupon discounts sequentially إذا رغبت في أن يتم حساب تخفيض القسائم بالتتابع. على سبيل المثال، لنفترض أنّ السعر الكلي لطلب المشتري 100$، وكانت لديه قسيمة تخفيض 10%، وأخرى 20%. سيتم أولا تطبيق القسيمة الأولى على السعر الكلّي، وبذلك يخفّض السعر إلى 90$. ثم يتم تطبيق القسيمة الثانية على السعر المخفّض (أي على 90$)، وبذلك يصبح السعر الكلّي للطلب بعد استخدام القسائم 72$. إذا تركت الخيار أعلاه غير مؤشر، سيتم جمع قيم القسائم معًا ثم تُطبّق على السعر الكلي. أي تصبح قيمة القسيمة للمثال أعلاه 30% (10% +20%)، وعند تطبيق القسيمة على 100$، سيُخفّض إلى 70$. تُعتبر القسائم من الأجزاء الفعّالة في استراتيجياتك في التسويق والمبيعات، لذلك اختر ما تراه مناسبًا لمتجرك. الدفع Checkout من هذا القسم يمكنك تأشير الخيار Enable guest checkout والذي عند تفعيله ستتيح للعملاء إمكانية الدفع دون الحاجة إلى إنشاء حساب وتسجيل الدخول. وبخلاف ذلك، عند إلغاء تأشيره سيتطلّب من العميل تسجيل الدخول قبل الدفع. الخيار الثاني في هذا القسم هو Force secure checkout والذي ننصحك باستخدامه بشدّة. إذا كانت بوابات الدفع التي تستخدمها تقبل تفاصيل البطاقة على الموقع onsite، فهذا الخيار مطلوب بالإضافة إلى شهادة SSL. حتّى وإن كانت عملية الدفع لا تتم بالكامل على الموقع offsite ننصح باستخدام هذا الخيار، لأنّ صفحة الدفع لمتجرك ستقوم بجمع بيانات شخصية يتوّقع عملاؤك أن تقوم بحمايتها. تأكّد فقط من تثبيت شهادة SSL من طرف المضيف host الذي تستخدمه أو من طرفك. عند تأشير الخيار أعلاه سيظهر خيار آخر، وهو Force HTTP when leaving the checkout. عند تأشير هذا الخيار ستُجبر جميع الصفحات على متجرك (باستثناء صفحات الدفع) على التحميل عبر HTTP بدلًا من (SSL (HTTPS. وهو مفيد إذا كانت بعض بوابات الدفع تتطلب هذا الأمر. صفحات الدفع Checkout Pages إذا قمت باستخدام مرشد التهيئة عند تثبيت ملحق WooCommerce (كما شرحنا في الدرس الأول)، ستجد أن صفحات السلة Cart والدفع Checkout معَدّة مسبقًا. مع ذلك يمكنك من هذا القسم اختيار الصفحات التي تريد من WooCommerce أن يستخدمها لصفحة السّلة، الدفع، أو الأحكام والشروط Terms and Conditions. تأكّد من وجود صفحتي السّلة والدفع، وإلّا لن يتمكّن العميل من الشراء والدفع. أما صفحة الأحكام والشروط فهي اختيارية، لكن عند إنشائها، سيُطلب من العملاء تأشير حقل I read & accept the terms & conditions (قرأت الشروط والأحكام وأوافق عليها) قبل أن يقوموا بإتمام عملية الدفع. ويمكنهم أيضًا الوصول إلى صفحة الشروط والأحكام من صفحة الدفع لكي يتمكّنوا من الاطلاع عليها: Checkout Endpoints في هذا القسم تتحّكم في endpoints الخاصة بإجراءات عملية الدفع. يمكن تعريف checkout endpoints بأنّها أجزاء إضافية تُلحق بعنوان URL صفحة الدفع لمعالجة إجراء محدّد أثناء عملية الدفع. يمكنك إدخال endpoint لإجراء الدفع Pay، الطلبات المستلمة Order Received وطريقة إضافة المدفوعات Add Payment Method: إذا كنت تريد إنشاء endpoints مخصصة، تأكّد من كونها فريدة، ولا تُستخدم في صفحة أخرى على الموقع، وإلّا ستواجه مشاكل في عملية الدفع. بوابات الدفع Checkout Gateways يغطّي هذا القسم بوابات الدفع التي تملكها على متجرك. يتضمّن WooCommerce خمس بوابات أساسية، ثلاث منها offline، والذي يعني أنّ الدفع لا يتم عبر الإنترنت؛ وهي BACS (تحويل مصرفي مباشر)، Cheque (الصكوك)، و Cash on Delivery (الدفع نقدًا عند التسليم). والبوابتان المتبقيتان هي online، والذي يعني أنّ الدفع يتم عبر الإنترنت؛ وهي PayPal و Simplify Commerce (الدفع باستخدام بطاقة ائتمانية): ملاحظة: الدفع بواسطة البطاقات الائتمانية Credit Card متاح فقط في الولايات المتحدة، المملكة المتحدة، وكندا. لذلك لا يظهر هذا الخيار في صفحة الدفع للمتاجر التي تم تحديد موقعها غير المواقع المذكورة. من هذا القسم يمكنك إعادة ترتيب بوابات الدفع لمتجرك، معرفة رمزها التعريفي ID، ومعرفة البوابات المفعّلة في لمحة واحدة. يمكنك ترتيب البوابات بالنقر على أيقونة التطابق (≡) بجانب اسم البوابة والسحب ثم الإفلات عند الترتيب المرغوب. ستكون البوابة التي تضعها في الترتيب الأول هي الخيار الافتراضي للدفع، إذا كانت مفعّلة، عندما يقوم العميل بالدفع: يمكنك الانتقال إلى إعدادات بوابة محددة إما بالنقر على اسم البوابة من القائمة، أو اذهب إلى أعلى الصفحة وانقر على التبويب الفرعي الخاص بتلك البوابة. وسنغطّي إعدادات كل بوابة على حِدة في الفقرات التالية: خيارات استلام المدفوعات عبر التحويل المصرفي المباشر BACS تحت تبويب Checkout الرئيسي انقر على التبويب الفرعي BACS: قم بتأشير الخيار الأول Enable Bank Transfer لإتاحة للعميل إمكانية الدفع بواسطة التحويل المصرفي. وإذا قمت بتفعيله تأكّد من إدخال عنوان مناسب في حقل Title، وصف مختصر في حقل Description، بالإضافة إلى التعليمات Instruction عند الحاجة. سيظهر العنوان لعملائك على صفحة الدفع، وعند النقر عليه سيظهر الوصف تحته: أما التعليمات فستظهر على صفحة استلام الطلب، وستُرسل بواسطة البريد الإلكتروني: في قسم تفاصيل الحساب Account Details قم بإدخال اسم الحساب Account Name، رقم الحساب Account Number، اسم المصرف Bank name، الرقم التعريفي للمصرف أو فرعه Sort Code، رقم الحساب المصرفي الدولي IBAN، ورمز تعريف المصرف BIC/Swift. قم بإدخال هذه المعلومات لكل حساب مصرفي تستقبل عن طريقه المدفوعات. يجب أن تلاحظ أنّ هذه البوابة لا تقوم بمعالجة عملية الدفع بصورة تلقائية. فهي تتطلّب أن تقوم بالتحقق من المدفوعات والموافقة عليها من داخل الحساب المصرفي الذي قمت بتحديده لاستقبال المدفوعات. ومن ثم تقوم بإدارة الطلبات وحالتها (جارية، مكتملة، ملغية...إلخ) يدويًا. بعد الانتهاء تأكد من حفظ التغييرات بالنقر على Save Changes. وبهذا قد أصبحت جاهزًا لاستقبال حوالات مصرفية من عملائك. خيارات استلام المدفوعات عبر الصكوك Cheques تحت تبويب Checkout الرئيسي انقر على التبويب الفرعي Cheque: قم بتأشير الخيار الأول، Enable Cheque Payment، إذا كنت تريد تمكين العميل من الدفع بواسطة صك. كما أنّ هذا الخيار يسهّل عليك تقديم طلبات تجريبية لاختبار أشياء مثل رسائل البريد الإلكتروني أو صفحات نجاح الطلب. إذا قمت بتفعيل هذا الخيار تأكّد من إضافة عنوان في حقل Title ووصف مختصر في حقل Description. في حقل التعليمات Instructions أدخل عنوان متجرك (أو العنوان الذي تريد أن يتم إرسال الصك إليه) وأية إرشادات أخرى. سيظهر عنوان طريقة الدفع هذه للعميل على صفحة الدفع، وعند النقر عليه سيظهر الوصف تحته: أما التعليمات فستظهر على صفحة استلام الطلب، وستُرسل بواسطة البريد الإلكتروني. وكما هو الحال في البوابة السابقة، هذه البوابة لا تعالج عملية الدفع تلقائيًا. وستتمّكن من استلام الصكوك وسحب المدفوعات نقدًا بنجاح حسب المعلومات التي قمت بإدخالها في حقل التعليمات. لكي تقوم باستلام المدفوعات بنجاح، ننصحك أن تقوم بصرف الصكوك قبل الشحن، فبهذه الطريقة ستضمن الدفع مقابل الطلب. وكذلك سيتوجّب عليك، عند تفعيل هذه البوابة، أن تقوم بإدارة الطلبات يدويًا. احفظ التغييرات بالنقر على Save Changes. خيارات استلام المدفوعات نقدا عند التسليم Cash on Delivery تحت تبويب Checkout الرئيسي انقر على التبويب الفرعي Cash on Delivery: قم بتأشير الخيار الأول، Enable Cash on Delivery، لتمكين العميل من الدفع عن تسليم الطلب. وهذا الخيار أيضًا يسهّل عليك تقديم طلبات تجريبية لاختبار أشياء مثل رسائل البريد الإلكتروني أو صفحات نجاح الطلب. إذا قمت بتفعيل هذا الخيار تأكّد من إدخال عنوان مناسب في حقل Title، وصف مختصر في حقل Description، بالإضافة إلى التعليمات Instruction عند الحاجة. سيظهر العنوان للعميل على صفحة الدفع، وعند النقر عليه سيظهر الوصف تحته. أما التعليمات فستظهر على صفحة استلام الطلب، وستُرسل بواسطة البريد الإلكتروني: بإمكانك أيضًا تفعيل هذه البوابة لطرق شحن محددة تقوم بإعدادها من خلال تبويب Shipping (أي يكون استلام المدفوعات نقدًا عند التسليم مقتصرًا على طرق الشحن التي تحددها من قائمة Enable for shipping methods): وكذلك بإمكانك تفعيل هذه البوابة للطلبات الافتراضية/القابلة للتنزيل بتأشير الخيار Accept for virtual orders. هذه البوابة كسابقاتها لا تعالج عملية الدفع تلقائيًا، ولذلك يتطلّب منك تأكيد إتمام عملية الدفع بالطريقة التي تراها مناسبة، ومن ثم إدارة حالة الطلب يدويًا في WooCommerce. احفظ التغييرات بالنقر على Save Changes قبل الانتقال إلى التبويب الفرعي التالي. خيارات استلام المدفوعات عبر PayPal يعتبر باي بال خيار الدفع الأكثر شعبية لأنّه يوفّر أمان تام فيما يتعلّق بالمعاملات المالية. انقر على التبويب الفرعي PayPal تحت التبويب الرئيسي Checkout. تتضمّن خيارات هذه البوابة عدة أقسام: PayPal قم بتأشير الخيار الأول، Enable PayPal standard، لاستقبال المدفوعات عبر باي بال، ثم قم بإدخال عنوان للبوابة في حقل Title، ووصف مختصر في حقل Description. في حقل PayPal Email، وهو الخيار الأهم في هذا القسم، تأكّد من إدخال عنوان البريد الإلكتروني الذي قمت بإعداده لاستقبال المدفوعات في حسابك على باي بال، وإلّا لن تذهب المدفوعات إلى الحساب الصحيح. قم بتأشير الخيار Enable PayPal Sandbox لكي تتمكّن من اختبار المدفوعات على موقعك أثناء مرحلة التطوير قبل أن تقوم بإطلاقه وطلب الأموال مقابل الطلبات. يتطلّب هذا الخيار التسجيل للحصول على حساب مطوّر developer account بالنقر على رابط here الموجود أسفل الخيار. قم بتأشير الخيار Enable Logging للسماح لباي بال بتسجيل جميع الأحداث في ملف محدد على خادومك، وهذا الأمر مفيد لمعالجة المشاكل التي قد تواجهك. خيارات متقدمة Advanced options يحتوي هذا القسم على بعض الخيارات المفيدة التي يمكنك استخدامها عند الحاجة: في حقل Receiver Email تستطيع إدخال عنوان بريد إلكتروني آخر والذي يمكن استلام المدفوعات عليه إذا كان عنوان البريد الإلكتروني الذي قمت بإدخاله سابقًا (في حقل PayPal Email) ليس هو العنوان الرئيسي لاستلام المدفوعات. انتبه فقط إلى أنّ العنوان الذي تقوم بإدخال في حقل Receiver Email سيُستخدم للتحقق من طلبات (IPN (Instant Payment Notification بدلًا من العنوان الأصلي في حقل PayPal Email. إذا كانت لديك مشاكل تتعلّق بإشعار الدفع الفوري IPN، بإمكانك استخدام حقل PayPal Identity Token. ويتطلّب ذلك تفعيل خيار Payment Data Transfer في حسابك على PayPal. سجّل الدخول إلى حسابك على PayPal ثم اذهب إلى: Settings > Website Payment Preferences قم بتفعيل Payment Data Transfer قم انسخ الرمز من حقل Identity Token: الصق الرمز في حقل PayPal Identity Token على WooCommerce. في حقل Invoice Prefix قم بإدخال رمز بادئ فريد خاص بموقعك. هذا الخيار مفيد وضروري إذا كانت لديك العديد من المتاجر التي تستخدم نفس حساب PayPal لاستقبال المدفوعات. في هذه الحالة تأكّد من إدخال الرمز البادئ لأنّ باي بال لا يسمح بالطلبات التي تحمل نفس رقم الفاتورة. يمكنك تجنّب هذه المشكلة باستخدام بادئة فريدة لفواتير كل متجر. إذا كنت تستخدم باي بال لمساعدتك في إنشاء ملصقات الشحن، سيفيدك الخيار Send shipping details to PayPal instead of billing والذي عند تفعيله سيقوم WooCommerce بإرسال عنوان الشحن الخاص بالعميل إلى باي بال بدلًا من إرسال الفواتير. بالرغم من أننا نوصي بإبقاء الخيار Address Override غير مفعّل، إلا أنّه خيار مُتاح لك إذا كنت ترغب في منع تغيير معلومات عناوين العملاء بين موقعك وباي بال. وبما أنّ باي بال يقوم بالتحقق من العناوين، يمكن أن يسبب هذا الخيار المشاكل بين موقعك وباي بال، لذلك من الأفضل عدم تفعيله. من قائمة Payment Action تحدد فيما إذا كنت تريد تقييد المدفوعات لحساب باي بال على الفور باختيار Capture، أو الحصول على موافقة يدوية أولًا بتحديد الخيار Authorize. أما خيار Page Style فهو اختياري ومنه يمكنك إدخال اسم لنمط الصفحة التي تقوم بإعدادها من حسابك على باي بال، مما يتيح لك المزيد من التحكّم في مظهر الصفحة التي يوجَّه إليها العملاء لإنهاء الطلب. توجد على باي بال مختلف أنماط الصفحات المعرّفة التي تجدها على حسابك. ألق نظرة عليها وادخل اسم النمط المرغوب في الحقل المذكور. API Credentials هذه الإعدادات مهمة لمعالجة عملية استرداد الأموال عبر باي بال. انقر على رابط here في وصف الإعدادات للعثور على اسم مستخدم API، الكلمة السرّية Password والتوقيع Signature الخاصة بحسابك على موقع باي بال: انسخ هذه البيانات وألصقها في حقولها المخصصة، ثم انقر على Save Changes لحفظ التغييرات. خيارات الدفع عبر البطاقة الائتمانية Simplify Commerce قبل أن نبدأ في ضبط الإعدادات، نودّ الإشارة إلى أنّ بوّابة Simplify Commerce (وهي التي تُستخدم لاستلام المدفوعات عبر البطاقة الائتمانية) لها بعض المتطلبات التقنية: استفسر من المضيف HOST فيما إذا كانت لخادومك دعم CURL، فهو يُستخدم للاتصال بواجهة برمجة التطبيق API لهذه البوابة. تأكّد من أنّ المضيف يستخدم إصدار PHP 5.3 أو الأحدث منه، وهذا من متطلبات استخدام حزمة أدوات تطوير البرمجيات SDK. تأكّد من استخدام إصدار WooCommerce 2.0 أو الأحدث منه. يوصى باستخدام شهادة SSL/HTTPS للحفاظ على بيانات العملاء مؤمّنة ومحمية. فهذه البوابة تتيح للعملاء إمكانية الدفع على الموقع مباشرة، لذلك اطلب من مضيفك المساعدة في تنصيب شهادة SSL. نأتي الآن إلى الإعدادات. تحتاج أولا إلى إنشاء حساب على موقع Simplify Commerce، وستجد رابط التسجيل في صفحة إعدادات بوابة Simplify Commerce. الآن انقر على تبويب Simplify Commerce الفرعي تحت تبويب Checkout الرئيسي: انقر على زر Sign up for Simplify Commerce لتبدأ بإنشاء الحساب. بعد إنشاء الحساب، قم بتأشير الخيار Enable Simplify Commerce لكي تتيح للعملاء إمكانية اختيار هذه الطريقة للدفع. ومن ثم قم بإضافة عنوان للبوابة في حقل Title ووصف في حقل Description: الخيار التالي هو أسلوب الدفع Payment Mode وهو الخاص بطريقة عرض البطاقة. بإمكانك اختيار أحد الخيارين، Standard أو Hosted Payments، إذا كانت لديك شهادة SSL مثبّتة. وبخلاف ذلك ليس لديك خيار سوى استخدام Hosted Payments. إذا كانت لديك شهادة SSL مثبّتة، سيُظهر أسلوب Standard نموذج بطاقة ائتمانية على صفحة الدفع، وسيستخدم أسلوب Hosted Payments مربّع حوار نموذجي لجمع معلومات الدفع. أما عند عدم تثبيت شهادة SSL، يجب أن تستخدم أسلوب Hosted Payments، وفي هذه الحالة سيتم توجيه العملاء إلى موقع Simplify Commerce حيث يمكنهم إدخال تفاصيل بطاقاتهم بأمان. لديك أيضًا إمكانية اختيار لون للنموذج من حقل Modal Color، وهذا فقط في حالة اختيار أسلوب Hosted Payments من قائمة Payment Mode. الخيار التالي هو Enable Sandbox Mode والذي عند تأشيره ستتُاح لك إمكانية اختبار الطلبات. لاحظ فقط أنّه عند تفعيل هذا الخيار لن تؤخذ أي مدفوعات حقيقية (كما قلنا هذا الخيار لأغراض الاختبار في مرحلة التطوير). بعد ذلك قم بإدخال رموز Sandbox Public Key و Sandbox Private Key (هذان الحقلان لا يظهران إلا عند تأشير الخيار Enable Sandbox Mode) والتي يمكنك الحصول عليها من حسابك على موقع Simplify Commerce: إذا لم تقم بتأشير الخيار Enable Sandbox Mode، ستتحول الحقول أعلاه إلى Public Key و Privet Key: هذه الحقول مهمة جدًا، تأكّد من إدخال الرموز التي تستطيع الوصول إليها من حسابك على Simplify Commerce. بعد الانتهاء انقر على Save Change لحفظ التغييرات. في النهاية، نود الإشارة إلى أنّه لا يُشترط استخدام جميع بوابات الدفع، قم بتفعيل البوابات التي تجدها مناسبة لمتجرك فقط. بهذه الخطوة نكون قد وصلنا إلى نهاية الدرس. لا تنس أن تتابع معنا الدرس القادم والذي سنغطّي فيه إعدادات الشحن Shipping.
  17. تمّ تطوير Redis في عام 2009، وهو مُخزّن بيانات بنمط المفتاح والقيمة (key value)، وهو مفتوح المصدر، ويُقدّم مرونة في الاستخدام، وكما في جميع نمط قواعد البيانات من نوع NoSQL الّتي اتبعها Redis، أمثال Cassandra, CouchDB, MongoDB، فإن Redis يَسمح للمُستخدِم بتخزين كميات ضخمة من البيانات بدون التقيد المفروض بقواعد البيانات العلائقيّة/الارتباطيّة (relational database)، بالإضافة إلى أنّه قد تمّ مُشابهته ومقارنته مع memcache، فيُمكن استخدامه بعناصره الأساسية كنظام تخبئة. إعداد بيئة ومتطلبات Redis قبل الشروع في تنصيب redis، يجب توفّر بعض المُتطلّبات والّتي من شأنها أنّ تجعل من عمليّة التنصيب أكثر سهولة. سيتمّ في البداية تحديث جميع حزم apt-get: sudo apt-get update سيتمّ بعد ذلك تحميل مُترجم (compiler) باستخدام الحزمة build-essential، والّتي من شأنها المساعدة في تنصيب Redis من المصدر: sudo apt-get install build-essential سيتمّ في الخطوة الأخيرة تحميل الأداة tcl الّتي يَعتمد عليها Redis: sudo apt-get install tcl8.5 تنصيب Redis بعد أنّ تمّ تنصيب المُتطلّبات الأساسيّة، فمن المُمكن الآن الشروع وتنصيب redis، ويُمكن تحديد الإصدار المطلوب أو تحميل الإصدار الأخير والذي سيحمل دائمًا الاسم redis-stable: wget http://download.redis.io/redis-stable.tar.gz يجب بعد ذلك فك ضغط الملفّ والانتقال إليه: tar xvzf redis-stable.tar.gz cd redis-stable يجب الآن المُتابعة مع الأمر make: make ولتنصيب Redis على كامل النّظام، فيُمكن إما نسخ ملفاته من المصدر: sudo cp src/redis-server /usr/local/bin/ sudo cp src/redis-cli /usr/local/bin/ أو تنفيذ الأمر التّالي: sudo make install بعد انتهاء عمليّة التنصيب، من المُستحسن تشغيل Redis كحارس (daemon) في خلفيّة النّظام، ولعمل ذلك يأتي Redis بملفّ برمجي (سكريبت) لهذه المُهمّة. يجب الانتقال إلى المسار utils للوصول إلى هذا الملفّ: cd utils ومن ثم تشغيل الملفّ الخاص بتوزيعات Ubuntu/Debian: sudo ./install_server.sh سيَعرض السكريبت بعض الأسئلة لإتمام عمليّة التهيئة، ولكن يُمكن الاعتماد على الإعداد الافتراضي والاكتفاء بالضغط على Enter، وبعد انتهاء عملية التهيئة سيكون خادم Redis يعمل في الخلفيّة (background). يُمكن تنفيذ الأمر التّالي للوصول إلى قاعدة البيانات Redis: redis-cli يُمكن اختبار Redis كالتّالي: $ redis-cli redis 127.0.0.1:6379> ping PONG redis 127.0.0.1:6379> set mykey somevalue OK redis 127.0.0.1:6379> get mykey "somevalue" أوامر Redis يتمّ إضافة بعض المُعطيات إلى سلسلة رموز (string)، والّتي تُعتبر من أبسط أنواع البيانات (datatype)، باستخدام الأمر التّالي: > SET users:SomeOne "job: SomeJob, email:example@example.com, age: some number " OK تمّ في الأمر السابق استخدام الأمر SET متبوعًا بالمُفتاح users:SomeOne، ومن ثمّ القيمة (value)، وهي سلسلة الرموز (string) نفسها. لا تُؤثر النقطتان (:) الموجودة في المُفتاح على الأمر السابق، ولكن من المُمكن الاستفادة منهما في وصف أوضح للمُفتاح المُراد تعيينه. يُمكن استعراض تفاصيل سلسلة الرموز السابقة باستخدام الأمر GET: GET users:SomeOne "job: SomeJob, email:example@example.com, age: some number " المجالات (Ranges) يتمّ تحديد مجال باستخدام مُعاملين والذين سيُمثلان العنصر الأوّل والعنصر الأخير، فالعنصر الأوّل سيُعتبر 0، وإن كان المُعامل الأخير -1، فإن جميع العناصر حتّى نهاية القائمة سيتمّ شملها، فعلى سبيل المثال، إن كانت قائمة تحتوي على ألوان قوس قزح مُرتبة بالترتيب ROYGBV، فيُمكن استعراضها كما في التّالي: > LRANGE ROYGBV 0 3 1) "red" 2) "orange" 3) "yellow" 4) "green" > LRANGE ROYGBV 0 -1 1) "red" 2) "orange" 3) "yellow" 4) "green" 5) "blue" 6) "violet" > LRANGE ROYGBV 3 -1 1) "green" 2) "blue" 3) "violet" انتهاء الصلاحية (Expiration) لا يُعتبر Redis ذو فائدة في تخزين المعلومات فقط، بل يُمكن استخدامه أيضًا في إنهاء صلاحيتها. يُعيّن الوقت اللازم على المُفتاح أنّ يتواجد خلاله إما بالثواني أو باستخدام طابع الوقت الخاصّ يونكس (Unix Time stamp)، ويتحكم الأمر EXPIRE بالمُدّة الّتي يتوجب على المُفتاح التواجد فيها، ويَعرض الأمر TTL الوقت المُتبقي حتّى انتهاء الصلاحيّة. > SET classified:information "Secret Stuff" OK > EXPIRE classified:information 45 (integer) 1 > TTL classified:information (integer) 31 وفي مُحاولة لاستعادة المعلومات بعد انقضاء مدّة الصلاحيّة، ستكون النتيجة هي nil: > GET classified:information (nil) التزايد أو العلاوة (Incrementing) يَملك Redis القدرة على زيادة سلاسل الرموز (strings) في قاعدة بياناته، مع الانتباه أنّه في حال وجود عمليّة جارية في زيادة قيمةٍ ما، فلا يستطيع أمر آخر التدخل والتعديل، هذا الأمر من شأنه أن يجعل من قاعدة البيانات ثابتة وغير شائبة. > SET population 6 OK > INCRBY population 10 (integer) 16 > INCR population (integer) 17 المداولات (Transactions) يملك Redis القدرة على إنجاز المُداولات (transactions)، والّتي يجب أنّ تخضع إلى: تنفيذ الأوامر بالترتيب، ولن يتمّ مقاطعتها خلال العمليّة من قبل طلبات أُخرى. على المُداولات أنّ تُعالج كلها دفعةً واحدة. تبدأ المُداولات بالأمر MULTI وبعد ذلك لتنفيذها يتمّ استخدام الأمر EXEC. سيتمّ الخروج من المُداولة، عند أي مُقاطعة للعمليّة، وسيواجه Redis خطًا سيوقفه من إعادة التشغيل حتّى تنفيذ الأمر edis-check-aof ليتمّ التراجع عن المُداولة الجزئية الّتي تمّت بالفعل قبل حدوث الخطأ وحذفها. سيَتمكّن الخادم بعد ذلك من إعادة التشغيل. > MULTI OK > SET population 6 QUEUED > INCRBY population 10 QUEUED > INCR population QUEUED > EXEC 1) OK 2) (integer) 16 3) (integer) 17 أنواع البيانات في Redis يَملك Redis خمسة أنواع من البيانات: Strings Sets Sorted Sets Lists Hashes سلاسل الرموز (Strings) تُعتبر سلاسل الرموز جوهر وأساس الأنواع في Redis الأوامر التّالية هي الأوامر الشائعة مع سلاسل الرموز: SET: يُعيّن قيمة إلى مُفتاح. GET: يجلب قيمة من مُفتاح. DEL: حذف مُفتاح وقيمته. INCR: زيادة قيمة مُفتاح. INCRBY: زيادة قيمة مُفتاح بقيم مُحدّدة. EXPIRE: الوقت اللازم على المُفتاح التواجد به، ويُعيّن بالثواني. تُستخدم سلاسل الرموز في تخزين الكائنات (objects): > SET newkey "the redis string begins" OK > GET newkey "the redis string begins" المجموعات (Sets) يُمكن الجمع بين سلاسل الرموز (strings)، ولذلك يُمكن استخدام مجموعات Redis، والّتي يُمكن القول عنها أنها مجموعة من سلاسل الرموز غير المُرتبة. بعض الأوامر الشائعة مع المجموعات: SADD: إضافة عنصر أو عناصر إلى مجموعة. SMEMBERS: جلب جميع العناصر المُعيّنة. SINTER: إيجاد تقاطع أكثر من مجموعة. SISMEMBER: التأكّد من وجود قيمة في مجموعة. SRANDMEMBER: جلب عنصر عشوائي. يُستفاد من المجموعات في Redis في العديد من الحالات، ولأن كل عنصر من مجموعة هو فريد، فإن إضافة عنصر إلى المجموعة لا يتطلّب عمليّة “افحص قبل الإضافة”، بدلًا من ذلك، فإن المجموعة ستتأكّد فيما إذا كان العنصر مكرّرًا أم لا، وذلك عند أي تنفيذ للأمر SADD: > SADD colors red (integer) 1 redis 127.0.0.1:6379> SADD colors orange (integer) 1 redis 127.0.0.1:6379> SADD colors yellow (integer) 1 redis 127.0.0.1:6379> SADD colors orange (integer) 0 redis 127.0.0.1:6379> SMEMBERS colors 1) "red" 2) "yellow" 3) "orange" يُستفاد من المجموعات بشكل خاصّ في فحص وضبط عناوين IPs في حال أنها فريدة لزوار صفحة ما، أو مثلًا في استخلاص عناصر بشكل عشوائي بالأمر SRANDMEMBER. المجموعات المرتبة (Sorted Sets) إن المجموعات المُرتبة هي اسمٌ على مُسمّى، فهي مجموعة من سلاسل الرموز (strings) مُرتبطة مع رقم مع ترتيب، وهو بشكلٍ افتراضيّ من الأصغر إلى الأكبر. يَعمل هذا النوع من البيانات بشكل مُلائم جدًا مع المجالات (ranges)، وبسبب التّرتيب الخاصّ به، فإن إضافة وحذف وتحديث القيم تتمّ بسرعة ملحوظة. بعض الأوامر الشائعة مع المجموعات المُرتّبة: ZADD: إضافة عناصر إلى مجموعة مُرتّبة. ZRANGE: عرض عناصر مجموعة مُرتّبة. ZREVRANGE: عرض عناصر مجموعة مُرتّبة بشكل عكسي. ZREM: إزالة عناصر من مجموعة مُرتّبة. يُمكن إنشاء مجموعة مُرتّبة كما في المثال التّالي، وهو لمساحة بعض البلدان، فعلى الرغم من تعيينها بشكل عشوائي، فإن استعراضها يَكون على التّرتيب: > ZADD countries 9 Tuvalu (integer) 1 > ZADD countries 62 Liechtenstein (integer) 1 > ZADD countries .7 Monaco (integer) 1 > ZADD countries .2 VaticanCity (integer) 1 > ZADD countries 107 Seychelles (integer) 1 redis 127.0.0.1:6379> ZRANGE countries 0 -1 1) "VaticanCity" 2) "Monaco" 3) "Tuvalu" 4) "Liechtenstein" 5) "Seychelles" القوائم (Lists) تُعتبر القوائم في Redis مجموعة من القيم المُرتّبة، وبالتّالي فهي عكس المجموعات (Sets)، والّتي هي غير مُرتّبة، فيُمكن إضافة عناصر إلى بداية ونهاية قائمة، حتّى بوجود ملايين العناصر داخل القائمة، وبسرعة كبيرة جدًا. الأوامر الأكثر شيوعًا مع القوائم: LPUSH: إضافة قيمة في بداية قائمة. RPUSH: إضافة قيمة في نهاية قائمة. LPOP: جلب وإزالة العنصر الأوّل في قائمة. LREM: إزالة العناصر من قائمة. LRANGE: جلب مجال من العناصر من قائمة. LTRIM: تعديل قائمة بترك عناصر مُحدّدة من مجال. أمثلة: > RPUSH lunch.provider alice (integer) 1 > RPUSH lunch.provider bob (integer) 2 > RPUSH lunch.provider carol (integer) 3 > RPUSH lunch.provider don (integer) 4 > RPUSH lunch.provider emily (integer) 5 عند الرغبة بالدفع (push) إلى واجهة صف الانتظار (queue)، فمن المُمكن استخدام الأمر LPUSH: LPUSH lunch.provider zoe (integer) 6 يُمكن استخدام الأمر LRANGE لاستعراض عناصر القائمة جميعًا: LRANGE lunch.provider 0 -1 1) "zoe" 2) "alice" 3) "bob" 4) "carol" 5) "don" 6) "emily" تُستخدم القوائم في مُعظم الأحيان لإنشاء خط زمني للأحداث، أو في الحفاظ على مجموعة مُحدودة من العناصر المبعثرات (Hashes) تُعتبر المبَعثرات في Redis من الأدوات المُفيدة في تمثيل الكائنات (objects) ذو العديد من الحقول (fields)، فهي مُعدّة لتخزين عدد هائل من الحقول في حجم صغير، وتستطيع البَعثرة تخزين أكثر من أربعة مليارات من أزواج قيم الحقول (field-value). بعض أوامر البعثرة الأكثر شيوعًا في Redis: HMSET: تعيين قيم بعثرة مُتعدّدة. HSET: تعيين حقل البعثرة بقيمة سلسلة رموز (string). HGET: جلب قيمة حقل البعثرة. HMGET: جلب جميع القيم من حقول البعثرة المعطاة. HGETALL: جلب جميع القيم لبعثرة ما. تُستخدم البَعثرة في وصف حساب المُستخدِم: > HMSET user:1 username someuser password 4bAc0s email someuser@example.com OK > HGETALL user:1 1) "username" 2) "jsmith" 3) "password" 4) "4bAc0s" 5) "email" 6) "jsmith@gmail.com" يتمّ استخدام الأمر HMGET للبحث عن معلومة مُحدّدة، وعرض القيم للحقول المطلوبة فقط. > HMGET user:1 username email 1) "someuser" someuser@example.com الختام انتشر Redis بسرعة كبيرة، واكتسب شهرةً واسعة بين المواقع أمثال: Github, Flickr, Disqus، وغيرها من المواقع، وذلك لتوافقه مع مُعظم لغات البرمجة، فهو بالفعل تقنية مُفيدة يُنصح بالاعتماد عليها وتجربتها. ترجمة -وبتصرّف- للمقال How To Install and Use Redis لصاحبته Etel Sverdlov.