الاستعدادات وإعداد البيئة.
قبل البدء في كتابة الكود، فإن وجود بيئة تطوير مستقرة ومحترفة يعتبر أساسًا للنجاح. هذا لا يساعد فقط على تحسين كفاءة البرمجة، ولكنه أيضًا يضمن توافق الإضافات (البرامج الإضافية) مع مخت
إعداد بيئة التطوير المحلية.
ننصح باستخدام مجموعات بيئات الخوادم المحلية مثل Local by Flywheel أو XAMPP أو MAMP. هذه الأدوات تسمح بتثبيت Apache وMySQL وPHP بنقرة واحدة، مما يوفر بيئة محاكاة مثالية لبيئة الخادم الحقيقية. تأكد من أن إصدار PHP الذي تستخدمه يتوافق مع متطلبات إصدار WordPress الذي تريد تثبيته؛ يُنصح عمومًا باستخدام إصدار PHP 7.4 أو أحدث للحصول على أداء أفضل ومستوى أعلى من الأمان.
محرر الشفرة واختيار الأدوات.
من المهم جدًا امتلاك محرر كود قوي ومتطور. تعتبر أدوات مثل Visual Studio Code وPhpStorm وSublime Text خيارات ممتازة، حيث توفر هذه الأدوات تمييزًا للغة البرمجية، واقتراحات أثناء كتابة الكود، بالإضافة إلى إمكانيات للتصحيح والتحقيق من أخطاء البرمجة. بالإضافة إلى ذلك، فإن تثبيت أداة إدارة التغييرات في الكود مثل Git يعتبر معيارًا صناعيًا لإدارة التغييرات في الملفات البرمجية، والتعاون الجماعي، وعمليات النسخ الاحتياطي.
القراءة الموصى بها دليل نهائي لتطوير إضافات ووردبريس: من المبادئ الأساسية إلى الاحترافية الكاملة。
قم بإنشاء ملف الإضافة (plugin) الخاص بك الأول.
الجزء الأساسي في أي إضافة (plugin) لنظام ووردبريس (WordPress) هو ملفها الرئيسي. هذا الملف لا يحتوي فقط على الكود الخاص بتنفيذ الإضافة، بل يقوم أيضًا بتوضيح المعلومات الخاصة بها (metadata) لنظام ووردبريس من خلال تعليقات معينة موجودة في بداية الملف (header comments).
هيكل الملف الرئيسي للإضافة (Plugin Main File)
يجب أن يحتوي كل إضافة (plugin) على ملف PHP رئيسي واحد. عادةً ما نسمي هذا الملف باسم وظيفة الإضافة (plugin function)، على سبيل المثال: my-first-plugin.phpيجب أن يتضمن بداية الملف تعليقات رأس الإضافة (plugin header comments) القياسية، وهي ضرورية لكي يتعرف ووردبريس (WordPress) على الإضافة.
<?php
/**
* Plugin Name: 我的第一个自定义插件
* Plugin URI: https://example.com/my-first-plugin
* Description: 这是一个用于演示的 WordPress 自定义插件。
* Version: 1.0.0
* Author: 你的名字
* Author URI: https://example.com
* License: GPL v2 or later
* Text Domain: my-first-plugin
*/ هذا التعليق يخبر ووردبريس بأن يعرض في صفحة “الإضافات” (Plugins) في الواجهة الخلفية اسم الإضافة ووصفها ومعلومات أخرى عنها. Text Domain مُستخدم للتدويل (internationalization)، وذلك للتحضير لأعمال الترجمة اللاحقة.
تفعيل وتعطيل الإضافات (Plugins)
بعد إنشاء الملف الرئيسي، يجب وضعه في دليل تثبيت ووردبريس. /wp-content/plugins/ موجود داخل المجلد. يمكن وضعه بشكل منفصل، أو يمكن إنشاء دليل خاص له (مثل…). /wp-content/plugins/my-first-plugin/بعد ذلك، قم بوضع الملف الرئيسي (الملف الذي يحتوي على كود الإضافة) داخل المجلد المناسب. بمجرد الانتهاء من ذلك، سجل الدخول إلى واجهة خلفية WordPress، ثم اذهب إلى صفحة “الإضافات” (Plugins). سترى الإضافة ال
فهم آليات ووردبريس الأساسية: الخطافات (Hooks) والمرشحات (Filters)
تعود قوة ومرونة ووردبريس إلى حد كبير إلى نظام “الخطافات (Hooks)” الخاص به. تقوم الإضافات (Plugins) بـ “تثبيت” نفسها على هذه الخطافات، مما يسمح بتغيير سلوك ووردبريس أو إضافة ميزات جديدة دون الحاجة إلى تعديل الكود الأساسي للمنصة.
القراءة الموصى بها تحليل متعمق لتطوير إضافات ووردبريس: بناء وظائف مخصصة من الصفر。
استخدام خطافات الأفعال (Action Hooks)
تسمح “خطافات الإجراءات” (Action Hooks) بتنفيذ كود مخصص في أوقات محددة، مثل عند نشر مقال، أو عند تسجيل المستخدم، أو عند تحميل صفحات الإدارة الخلفية. add_action() يمكن للدالة أن تقوم بتثبيت (ماين) دالتك على الخطاف (hook) المحدد.
يوضح المثال التالي كيفية إضافة نص مخصص في الجزء السفلي من صفحة الموقع الأمامية. لقد استخدمنا… wp_footer هذا هو خطاف الإجراء (Action Hook).
function myplugin_add_footer_text() {
echo '<p style="text-align:center;">شكرًا لاستخدامكم هذا الموقع!</p>';
}
add_action( 'wp_footer', 'myplugin_add_footer_text' ); استخدام المرشحات (Filters)
تُستخدم المرشحات (Filters) لتعديل البيانات التي يتم إنشاؤها أثناء التنفيذ. على عكس الإجراءات (Actions)، تحتاج المرشحات إلى استقبال قيمة مدخلة ويجب أن تعيد قيمة معدلة كنتيجة لعمليتها. add_filter() دالة لتطبيق عامل التصفية.
على سبيل المثال، الكود أدناه يعدل محتوى العرض في نهاية عناوين المقالات، ويضيف امتدادًا لجميع العناوين. نحن نستخدم… the_title هذا المرشح (الفلتر).
function myplugin_modify_title( $title ) {
// 确保只在主循环中修改
if ( is_single() ) {
return $title . ' [推荐阅读]';
}
return $title;
}
add_filter( 'the_title', 'myplugin_modify_title' ); إضافة صفحة للإعدادات للإضافة (Plugin)
عادةً ما يحتاج الإضافات الناضجة إلى توفير خيارات تكوين للمستخدمين. في ووردبريس، هناك طريقة موحدة لإنشاء صفحات الإعدادات الخاصة بالإضافات، ويمكن إضافتها إلى مواقع مختلفة في القائمة الخلفية.
إنشاء عناصر قائمة الإدارة
أولاً، يجب عليك استخدام… add_action( ‘admin_menu’, … ) يمكن استخدام “الخطافات” (hooks) لتسجيل صفحة قائمة جديدة في ووردبريس. يوفر ووردبريس عدة دوال (functions) لإضافة قوائم على مستويات مختلفة، مثل… add_menu_page()(القائمة الرئيسية) أو add_options_page()(أضفه إلى قائمة الخيارات الفرعية “الإعدادات”).
القراءة الموصى بها دليل شامل لتطوير إضافات ووردبريس: من المبتدئين إلى الخبراء في إنشاء إضافات وظيفية متقدمة。
الكود أدناه يوضح كيفية إنشاء صفحة قائمة رئيسية بسيطة. الدالة (function): myplugin_settings_page_html مسؤول عن ترجمة محتوى HTML الخاص بهذه الصفحة إلى اللغة المطلوبة.
function myplugin_add_menu() {
add_menu_page(
‘我的插件设置’, // 页面标题
‘我的插件’, // 菜单标题
‘manage_options’, // 所需权限
‘myplugin’, // 菜单 Slug
‘myplugin_settings_page_html’, // 回调函数
‘dashicons-admin-generic’, // 图标(可选)
20 // 位置(可选)
);
}
add_action( ‘admin_menu’, ‘myplugin_add_menu’ );
function myplugin_settings_page_html() {
// 检查用户权限
if ( ! current_user_can( ‘manage_options’ ) ) {
return;
}
?>
<div class="“wrap”">
<h1></h1>
<form action="/ar/“options.php”/" method="“post”" data-trp-original-action="“options.php”">
<?php
// 输出设置字段
settings_fields( ‘myplugin_options’ );
do_settings_sections( ‘myplugin’ );
submit_button( ‘保存设置’ );
?>
<input type="hidden" name="trp-form-language" value="ar"/></form>
</div>
أنا لا أعرف ماذا أقول. إعدادات التسجيل، الحقول، والأقسام
لكي يتمكن النموذج المذكور أعلاه من تخزين البيانات، يجب عليك استخدام واجهة برمجة التطبيقات (API) الخاصة بـ WordPress. وهذا يشمل استخدام إعدادات معينة داخل WordPress لتمكين هذه الميزة. register_setting() قم بتسجيل مجموعة إعدادات، واستخدمها… add_settings_section() أضف قسمًا جديدًا، واستخدم… add_settings_field() أضف الحقول المحددة.
عادةً ما يتم هذا الإجراء في… admin_init تم إكمال العملية داخل الخادم (الـ “hook”). عند تعيين واجهة برمجة التطبيقات (API)، سيتم معالجة التحقق من صحة البيانات وتخزينها تلقائيًا. wp_options تسهل هذه الميزات بشكل كبير عملية التطوير، خاصة من حيث إدارة البيانات (مثل التحقق من صحة البيانات المدخلة) والأمان (مثل التحقق من صحة قيمة Nonce).
الملخصات
تطوير إضافات ووردبريس (WordPress plugins) يعتبر عملية هندسية منهجية تبدأ من إنشاء البيئة المناسبة وإنتاج الملفات الأساسية، مروراً بفهم عميق لنظام الاستجابات (hook system) واستخدامه بشكل فعال، وأخيراً ببناء واجهة تفاعل مع المستخدمين للإضافة. اتباع معايير ووردبريس للترميز وأفضل الممارسات (مثل استخدام تعليقات خاصة في رأس الإضافة، واستخدام أسماء دوال آمنة، ودعم التعددية اللغوية، وإعداد واجهات برمجة التطبيقات API) لا يضمن فقط استقرار الإضافة أثناء التشغيل، بل يسهل أيضاً عمليات الصيانة والتوسيع. الجوهر في ذلك هو الاستفادة من نظام الاستجابات الضخم المتاح في ووردبريس لتعزيز وظائف الموقع بطريقة معيارية وغير تدخلية. من خلال تطبيق الخطوات الموضحة في هذا الدليل، أصبحت الآن قادراً على بناء إضافة مخصصة كاملة الوظائف وذات هيكل واضح من الصفر.
الأسئلة الشائعة الأسئلة المتداولة
ما هي المعرفة البرمجية الأساسية المطلوبة لتطوير إضافات (plugins)؟
يجب أن تمتلك معرفة أساسية قوية بلغة PHP، نظرًا لأن قلب نظام ووردبريس (WordPress) وإضافاته مكتوبة بشكل أساسي بلغة PHP. بالإضافة إلى ذلك، من الضروري أن يكون لديك فهم أساسي للغات HTML وCSS وJavaScript (وخاصة jQuery، نظرًا لاستخدامها على نطاق واسع في الكود القديم لووردبريس)، وهذا سيساعدك في التعامل مع عرض المحتوى والتفاعلات الأمامية للمستخدمين. كما سيكون من المفيد أن تكون على دراية بالمفاهيم الأساسية لعمليات قواعد البيانات MySQL.
كيفية تجنب تعارض أسماء دوال الإضافات (plugins) مع إضافات أخرى؟
أفضل ممارسة لتجنب الصراعات هي استخدام بادئة فريدة لتسمية جميع الدوال (functions) والفئات (classes) والثوابت (constants) والمتغيرات (variables) الخاصة بك. يجب أن تكون هذه البادئة فريدة بما فيه الكفاية، وعادةً ما تكون مرتبطة باسم الإضافة (plugin) الخاصة بك أو اختصارها. على سبيل المثال، إذا كان اسم الإضافة الخاصة بك “Awesome Widget”, فيمكنك استخ aw_、awesome_widget_ أو AW_ 作为前缀。将代码封装在类(Class)中也是现代 WordPress 插件开发中广泛采用的、更优雅的避免冲突和组织代码的方式。
في أي دليل يجب تخزين الإضافات (البرامج الإضافية)؟
يجب أن تتم تخزين ملفات الإضافات (البرامج الإضافية) في دليل تثبيت ووردبريس. /wp-content/plugins/ داخل المجلد: بالنسبة للإضافات البسيطة التي تتكون من ملف واحد فقط، يمكن وضع ملف PHP الرئيسي مباشرة في هذا المجلد. أما بالنسبة للإضافات الأكثر تعقيدًا، فننصح بشدة بإنشاء مجلد فرعي مستقل يحمل اسم الإضافة نفس /wp-content/plugins/my-awesome-plugin/ثم قم بتنظيم جميع ملفات الإضافات (PHP، CSS، JS، الصور، إلخ) داخل هذا الدليل الفرعي. هذا يجعل إدارة الملفات أكثر وضوحًا وتنظيمًا.
كيف يمكن إضافة دعم للترجمة إلى الإضافات (plugins)؟
إضافة دعم الترجمة الدولية (i18n) إلى الإضافة يتضمن الخطوات التالية: أولاً، يجب تعيين الإعدادات الصحيحة في تعليقات رأس الإضافة. Text Domainواستخدم دوال الترجمة في ووردبريس داخل الكود، مثل… ()、_e()、esc_html() قم باستخدام علامات الترقيم (%) لتحيط بجميع النصوص التي تحتاج إلى الترجمة. بعد ذلك، استخدم أداة مثل Poedit لاستخراج هذه النصوص وإنشاء ملفات الترجمة الناتجة. .pot ملفات القوالب، وبناءً عليها يتم إنشاء النسخ المناسبة باللغات المطلوبة. .po و .mo أخيرًا، استخدم هذا المحتوى أثناء تهيئة الإضافة (plugin initialization). load_plugin_textdomain() استخدم الدالة لتحميل الترجمة.
ما التالي، ما التالي؟
القراءة الموسعة والمعرفة العملية
فيما يلي بعض الموضوعات ذات الصلة بموضوع هذه المقالة وهي مناسبة لمزيد من القراءة المتعمقة. وغالباً ما يكون من الأفضل إعطاء الأولوية للبدء بالمقال الأقرب إلى مشكلتك الحالية ثم التوسع تدريجياً إلى المواضيع المحيطة.
- 10 إضافات WordPress موصى بها لعام 2026 لتحسين أداء الموقع وأمانه
- تحليل متعمق لـ WooCommerce: بناء موقع تجاري إلكتروني قوي على WordPress من الصفر
- أفضل 10 إضافات لـ WordPress يجب تثبيتها في عام 2026 لتحسين أداء الموقع وزيادة أمانه
- ١٠ إضافات WordPress عملية ينصح باستخدامها لتحسين أداء الموقع وزيادة أمانه بشكل كبير
- ١٠ إضافات أساسية لتحسين أداء وأمان مواقع ووردبريس