تعلم برمجة إضافات وردبريس [الجزء الأول]

مدرج تحت قسم: دروس
31 أكتوبر 2009

تعلم برمجة إضافات وردبريس [الجزء الأول]

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

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

قبل البدء بكيفية البرمجة، أنصحكم باستخدام برنامج Notepad++ من أجل التخلص من مشاكل التراميز كما أنه يُسّهل عملية البرمجة من خلال تلوين الشفرات.

plugin-output

ما ستقوم بعمله هذه الإضافة

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

إنشاء ملف الإضافة

طبعاً بعد تنصيب الوردبريس لديك، ندخل إلى مُجلد wp-content ومن ثم مُجلد plugins. نقوم الآن بإنشاء مُجلد باسم الإضافة و ليكن مثلاً almashroo و داخل هذا المُجلد نُنشىء ملف php باسم almashroo.php مثلاً و نفتح هذا الملف، مُلاحظة صغيرة بعد فتح الملف، إذا كُنتم تستخدمون برنامج Notepad++، من قائمة Format نختار Encoding in UTF-8 without BOM من أجل تجنب مشاكل الترميز باللغة العربية. الآن سنبدأ بأول شفرة في الإضافة‪.‬

<?php
/*
Plugin Name: Name Of The Plugin // هنا نكتب اسم الإضافة و هذا السطر ضروري
Plugin URI: http://Plugin URI // هنا نكتب رابط موقع الإضافة إن وجد
Description:description of the Plugin. // هنا نكتب وصف لكي يظهر في صفحة الإضافات
Version: The Plugin's Version Number،  e.g.: 1.0 // هنا نكتب رقم الإصدار
Author: Name Of The Plugin Author // هنا نكتب اسم مُبرمج الإضافة
Author URI: http://URI_Of_The_Plugin_Author //هُنا نكتب موقع مُبرمج الإضافة
*/
?>

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

/*

*/

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

<?PHP
/*
Plugin Name:  المشروع
Plugin URI: http://www.almashroo.com
Description: إضافة تجريبية للورد بريس
Version: 1.0
Author: المشروع
Author URI: http://www.almashroo.com
*/
?>

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

plugin-information

تعريف دالة طباعة النص وربطها بالأحداث

الآن نأتي للمرحلة الأهم و هي كتابة الشفرة التي تعرض لنا أي جملة نُريدها، و لكن قبل ذلك أُريد أن أُخبركم، أن الإضافة في الوردبريس هي عبارة عن دوال functions. فمثلاً في حالتنا هُنا، إذا أردنا طباعة جملة فقط مايلزمنا هو دالة بسيطة! ولتكن كالتالي:

function print_stat()
{
	return "هذه أول إضافة لي في الوردبريس";
}

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

add_action('wp_head', print_stat);

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

الآن بعدما قُمنا بهذا التعريف انتهت الإضافة، نعم بهذه البساطة المهم الآن فهم المبدأ ومن ثم نطور الفكرة، ستصبح الشفرة الكاملة كالتالي:

<?PHP
/*
Plugin Name:  المشروع
Plugin URI: http://www.almashroo.com
Description: إضافة تجريبية للورد بريس
Version: 1.0
Author: المشروع
Author URI: http://www.almashroo.com
*/

function print_stat()
{
	return "هذه أول إضافة لي في الورد بريس";
}
add_action('wp_head', print_stat);
?>

استدعاء دالة طباعة النص في الصفحات

جميل جداً، الآن إنتهينا من كل شيء و قُمنا بتعريف الإضافة في النظام، ولكن الآن كيف سنستدعي الإضافة؟ أو كيف سنستفيد منها في الوقت الراهن؟

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

<?php echo print_stat(); ?>

print-statement

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

مُلاحظة

يجب أن يكون اسم الإضافة مُميز و يعبّر عن محتوى الإضافة، لأن هناك الآلاف من الإضافات، فتخيل لو كانت كل إضافة حسبما يُريد مٌبرمجها! لذا يُفضّل أن يكون اسم الإضافة مُعبراً عن وظيفتها و بالتالي اسم المجلد الذي ستضع الإضافة فيه سيحمل نفس اسم الإضافة و هذا ما سيميزه عن غيره.

في مثالنا اسمينا المجلد باسم المشروع وكذلك ملف PHP بداخله أيضاً بنفس الاسم. ولكن لنفرض أننا نُريد تغيير اسمه لاسم يُعبر عن وظيفة الإضافة، فمثلاً اسم print_statment هو اسم الإضافة، فنُسمي المجلد عوضاً عن almashroo باسم print_statment والملف الذي بداخل المُجلد و هو عبارة عن ملف الإضافة باسم مُختصر وليكن printstat.php.

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

عن الكاتب

فراس اللو مُبرمج PHP,JavaScript & Ajax . يعشق البرمجة كثيراً و كذلك الويب و لكن للأسف لم يحصل على الفرصة 100% ! من هواياته التلحين و كتابة الأغاني بالإضافة إلى شغفه الكبير بكرة القدم و خصوصاً نادي برشلونة الإسباني , يُمكنكم مُتابعته على تويتر , أو من خلال المدونة

  • Share/Bookmark

التعقيبات

  1. ‫تعلم برمجة إضافات وردبريس [الجزء الثاني]‬
  2. غير معروف
  3. غير معروف

التعليقات (25) على ”تعلم برمجة إضافات وردبريس [الجزء الأول]“

  1. هاوي جملة

    مرحبا،

    آمل شرح طريقة برمجة التطبيقات في إدارة محتوى جملة joomla1.5 وكذلك الموديولات والإضافات.

    مع شكري لكم

  2. اشكرك اخوي جزيل الشكر على هذا الدرس
    لم اتوقع ان برمجة اضافات الوورد برس بهذه البساطة
    اشكرك جزيل الشكر اخي الكريم
    ^_^

  3. كنت اتمنى اخي الكريم لو تعطي توضيح اكثر عن الاحداث
    حسب ما فهمته هو مكان او لحظة تنفيذ الكود
    هل هذا صحيح !!

  4. بارك الله فيك اخي

    مشكوور

  5. مجتهد

    بارك الله فيك اخي العزيز على الشرح الوافي .. وجزاك الله الف خير ونفع بعلمك وبك الاسلام والمسلمين

    عندي استفسار بسيط

    عن استدعاء طباعة النص في الصفحه كيف يتعرف البرنامج ان المقصود اضافتنا ام ان print_stat خاصه لاتكرر في اضافه ثانيه

    ياليت التوضيح حول النقطه هذي لكي نستوعب الدرس بحكم اننا مبتدئين في هذا المجال ربما تكون اسئلتنا واستفساراتنا غبيه بالنسبه للمبرمج المحترف

أضف تعليقك




يمكنك استخدام الوسوم التالية في التعليق: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>


* حقول مطلوبة