كيف رفعت أول إضافة لي على مستودع ووردبريس

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

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

صفحة إضافة ختَّام في مستودع ووردبريس
صفحة إضافة ختَّام في مستودع ووردبريس

يوفر WordPress.org صفحة تمكن أي مطور ووردبريس من تقديم طلب رفع إضافة إلى مستودع ووردبريس، لكن قبل استخدام هذه الصفحة لرفع الإضافة، تطلب ووردبريس التأكد من توافق الإضافة مع المعايير.

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

  • وجود ملف الإضافة الرئيسي وملف readme.txt الخاص بها في المجلد الرئيسي لمشروع الإضافة.
  • توفير ملف readme.txt الذي يتضمن معلومات الإضافة، مثل متطلبات استخدامها ووصفها الذي يظهر في صفحة الإضافة ضمن المستودع.
  • فحص الإضافة باستخدام أداة Plugin Check والتأكد من حل جميع المشاكل غير الكاذبة التي تظهرها.

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

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

إنشاء ملف readme.txt لإضافة ختام
إنشاء ملف readme.txt لإضافة ختام

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

نتائج فحص الإضافة تظهر الأخطاء الموجودة فيها
نتائج فحص الإضافة تظهر الأخطاء الموجودة فيها

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

ضغطت مجلد الإضافة على شكل ملف zip، ثم أرسلتها إلى مستودع ووردبريس الرسمي من خلال صفحة Add your Plugin. بعد فتح الصفحة وتسجيل الدخول، نختار ملف الإضافة بالنقر على زر (Select File)، ثم نضع أي ملاحظات مهمة حول الإضافة في حقل (Additional Information)، وبعد ذلك نؤكد الالتزام بالشروط وننقر على زر (Upload) للرفع.

رفع إضافة إلى مستودع ووردبريس
رفع إضافة إلى مستودع ووردبريس

وبعد الرفع وصلتني رسالة بريد تؤكد بأنه تم استلام الإضافة وسيتم مراجعتها في أقرب وقت ممكن. 

تأكيد رفع الإضافة في رسالة الإيميل
تأكيد رفع الإضافة في رسالة الإيميل

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

طلب تعديلات على الإضافة في رسالة الإيميل
طلب تعديلات على الإضافة في رسالة الإيميل

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

في حالتي كانت توجد 3 مشاكل في الإضافة، الأولى هي وجود أكواد JavaScript وCSS ضمن بعض ملفات PHP، وهذا غير جيد، حيث يجب أن يتم وضعها في ملفات منفصلة حصرًا، والثانية عدم عمل تطهير (Sanitization) لحقول الإضافة المسجلة، والثالثة نسيان إضافة كود منع الوصول المباشر إلى أحد ملفات PHP لتعزيز الأمان، وهذا جزء رسالة البريد الإلكتروني الذي يوضح هذه المشاكل.

جزء رسالة البريد الإلكتروني الذي يشرح المشاكل وطرق حلها
جزء رسالة البريد الإلكتروني الذي يشرح المشاكل وطرق حلها

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

إرسال رد إلى فريق ووردبريس لإعلامهم بتنفيذ التعديلات
إرسال رد إلى فريق ووردبريس لإعلامهم بتنفيذ التعديلات

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

قبول الإضافة في مستودع ووردبريس الرسمي
قبول الإضافة في مستودع ووردبريس الرسمي

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

رابط إضافة ختام على نظام SVN
رابط إضافة ختام على نظام SVN

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

بعد الاطلاع على التعليمات ومطالعة الروابط، نصبت على حاسوبي برنامج TortoiseSVN الذي يسهل العمل مع نظام SVN، مع العلم أنه يمكن العمل على رفع الإضافة من خلال سطر الأوامر، لكن استخدام برنامج أسهل. بعد ذلك أنشأت مجلدًا فارغًا على الحاسوب باسم khattam، ثم نقرت عليه بزر الماوس الأيمن، واخترت (Checkout) من قائمة TortoiseSVN.

النقر على Checkout
النقر على Checkout

ظهرت نافذة الاتصال مع مستودع الإضافة، فأدخلت رابط SVN الخاص بإضافتي ضمن حقل URL of Repository، ثم نقر على زر (OK).

الاتصال مع مستودع إضافة ختَّام
الاتصال مع مستودع إضافة ختَّام

طلب مني إدخال بيانات تسجيل الدخول إلى حساب SVN الخاص بي، ويمكن تكوين هذه البيانات والحصول عليها من خلال حسابك على wordpress.org، وذلك بالانتقال إلى Account & Security ثم SVN credentials.

تمت مباشرة مزامنة المستودع مع المجلد الفارغ الذي أنشأته باسم (khattam)، وأصبح المجلد يتضمن المجدات (assets - tags - trunk)، ولكي تتعرف على ما تمثله هذه المجلدات يجب أن تقرأ المصادر التي ضُمنت في رسائل البريد الإلكتروني من ووردبريس.

المجلدات التي أصبح يتضمنها مجلد khattam الذي كان فارغًا
المجلدات التي أصبح يتضمنها مجلد khattam الذي كان فارغًا

لكن كبداية، يتضمن trunk ملفات إضافتك البرمجية، ويجب أن يكون ملف الإضافة الرئيسي وملف Readme.txt ضمن هذا المجلد مباشرة وليس ضمن مجلد فرعي فيه، أما مجلد tags فهو مخصص لإصدارات الإضافة عند عمل التحديثات، وملف assets مخصص لأيقونة الإضافة ولقطات الشاشة الخاصة بها، حيث يجب وضعها ضمنه.

للرفع قمت بنسخ ملفات إضافة ختام إلى مجلد trunk، ونسخت الأيقونة ولقطات الشاشة إلى assets، ثم نقرت على مجلد khattam بزر الفأرة الأيمن، واخترت (Commit) من قائمة TortoiseSVN.

اختيار Commit من خيارات برنامج TortoiseSVN
اختيار Commit من خيارات برنامج TortoiseSVN

ظهرت نافذة لمزامنة الملفات التي نسختها إلى مجلدات trunk و assets مع مستودع SVN الخاص بالإضافة، وطلب مني وضع تعليق لتوضيح هذا الرفع، حيث يفيد ذلك في استعادة نسخة سابقة من الإضافة عند الحاجة، فأدخلت (Adding first version of Khattam plugin 1.0)، وتأكدت من اختيار كل الملفات ورفعت الإضافة، فظهرت مباشرة ضمن المستودع الرسمي على رابطها الذي حددته ضمن ملفات الإضافة أثناء تطويرها (يرسل أيضًا ضمن رسائل البريد الإلكتروني من ووردبريس).

ظهور إضافة ختَّام في مستودع ووردبريس
ظهور إضافة ختَّام في مستودع ووردبريس

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

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