التصنيف: الإضافات

دروس اختيار وإعداد وتطوير إضافات ووردبريس وحل مشكلاتها.

  • كيف تستخدم WP-CLI لإدارة ووردبريس؟

    # كيف تستخدم WP-CLI لإدارة ووردبريس؟

    **الرابط الدائم المقترح (Slug):** `wordpress-wp-cli-guide`

    **وصف الميتا:** تعلّم استخدام WP-CLI لإدارة ووردبريس من الطرفية، مع أوامر للإضافات والقوالب والنظام والمنشورات، ونصائح لتجنب أخطاء الأوامر.

    **التصنيف:** الإضافات

    **الوسوم:** WP-CLI، ووردبريس للمطورين، إدارة ووردبريس، سطر الأوامر

    **الكلمة المفتاحية الرئيسية:** WP-CLI

    **كلمات مفتاحية ثانوية:** أوامر WP-CLI، إدارة ووردبريس من الطرفية، WordPress CLI

    ## مقدمة

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

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

    لذلك سنركز على الاستخدام العملي الآمن: نبدأ بالأوامر التي تقرأ المعلومات، ثم ننتقل إلى الأوامر التي تغير الموقع مع خطوات تحقق قبل التنفيذ.

    ## ما هو WP-CLI؟

    WP-CLI اختصار لـ WordPress Command Line Interface. وهي أداة مجانية ومفتوحة المصدر لإدارة مواقع ووردبريس من سطر الأوامر.

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

    ## ماذا تحتاج قبل استخدامه؟

    تحتاج إلى:

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

    في الاستضافة المشتركة قد يكون WP-CLI متوفرًا مسبقًا، بينما في خادم خاص قد تحتاج إلى تثبيته وفق وثائق WP-CLI الرسمية.

    ## أول أمر: معرفة إصدار WP-CLI

    بعد تثبيته، نفذ:

    “`bash
    wp –info
    “`

    سيعرض الأمر معلومات عن بيئة WP-CLI وPHP والنظام، مما يساعدك على التأكد من أن الأداة تعمل.

    ## تحديد مجلد ووردبريس

    يجب تنفيذ معظم أوامر WP-CLI من مجلد يحتوي على تثبيت ووردبريس، أو تمرير المسار المناسب باستخدام `–path`.

    مثال:

    “`bash
    cd /var/www/html
    wp core version
    “`

    إذا كنت في مسار مختلف:

    “`bash
    wp core version –path=/var/www/html
    “`

    استخدم المسار الحقيقي لموقعك بدل المثال.

    ## معرفة إصدار ووردبريس

    الأمر البسيط هو:

    “`bash
    wp core version
    “`

    هذه من أفضل الأوامر للبدء لأنها لا تغير شيئًا في الموقع.

    ## عرض الإضافات

    استخدم:

    “`bash
    wp plugin list
    “`

    سيعرض عادة الاسم والحالة والإصدار ومعلومات أخرى بحسب إعدادات الأمر.

    يمكنك تحديد إضافة واحدة:

    “`bash
    wp plugin get plugin-slug
    “`

    واستخدم اسم الـslug الصحيح للإضافة، وليس الاسم الظاهر فقط في الواجهة.

    ## معرفة الإضافات القابلة للتحديث

    لعرض ما يمكن تحديثه قبل تنفيذ أي تغيير:

    “`bash
    wp plugin update –all –dry-run
    “`

    فكرة `–dry-run` مهمة جدًا؛ فهي تسمح لك بمعاينة العملية بدل تنفيذها مباشرة عندما يدعم الأمر هذا الخيار.

    بعد مراجعة النتائج، يمكن تحديث إضافة محددة:

    “`bash
    wp plugin update plugin-slug
    “`

    وإذا أردت تحديث جميع الإضافات:

    “`bash
    wp plugin update –all
    “`

    لا تنفذ التحديث الشامل على موقع حساس دون نسخة احتياطية واختبار مناسب.

    ## تفعيل وتعطيل الإضافات

    لتفعيل إضافة:

    “`bash
    wp plugin activate plugin-slug
    “`

    لتعطيلها:

    “`bash
    wp plugin deactivate plugin-slug
    “`

    وفي حالة وجود تعارض، يمكن أن تكون هذه الأوامر مفيدة جدًا عندما لا تستطيع الدخول إلى لوحة التحكم.

    ## تحديث ووردبريس نفسه

    يمكنك معرفة الإصدار أولًا ثم استخدام:

    “`bash
    wp core check-update
    “`

    لرؤية ما إذا كان هناك تحديث متاح.

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

    “`bash
    wp core update
    “`

    بعد التحديث اختبر الموقع، ولا تعتبر نجاح الأمر في الطرفية دليلًا على أن كل وظائف الموقع تعمل.

    ## إدارة القوالب

    لعرض القوالب:

    “`bash
    wp theme list
    “`

    ولمعرفة تفاصيل قالب:

    “`bash
    wp theme get theme-slug
    “`

    يمكنك أيضًا تفعيل قالب معروف:

    “`bash
    wp theme activate theme-slug
    “`

    استخدم هذا على Staging عندما يكون القالب مرتبطًا بتصميم إنتاجي أو بوظائف خاصة.

    ## عرض المنشورات

    يستطيع WP-CLI التعامل مع المحتوى أيضًا. لعرض المنشورات المنشورة مثلًا:

    “`bash
    wp post list –post_type=post –post_status=publish
    “`

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

    ## إنشاء منشور من الطرفية

    في حالة الحاجة إلى إنشاء محتوى عبر عملية إدارية، يمكن استخدام:

    “`bash
    wp post create –post_title=”عنوان تجريبي” –post_status=draft
    “`

    الأفضل في العمليات الآلية أن تبدأ بالحالة `draft` عندما تكون المراجعة البشرية مطلوبة، ثم تنشر بعد التأكد من العنوان والمحتوى والتصنيف والبيانات الوصفية.

    ## البحث داخل الإعدادات

    يستطيع WP-CLI التعامل مع خيارات ووردبريس:

    “`bash
    wp option get siteurl
    “`

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

    ## لماذا لا نبدأ بأوامر الحذف؟

    لأن WP-CLI يجعل العمليات السريعة سهلة. لكن السهولة قد تخفي خطرًا حقيقيًا. الأمر الذي يحذف مكونًا أو بيانات لا يعرض دائمًا فرصة تراجع بسيطة.

    لذلك استخدم التسلسل:

    1. أمر قراءة للتأكد من الحالة.
    2. نسخة احتياطية عند الضرورة.
    3. أمر تجريبي أو `–dry-run` إن كان مدعومًا.
    4. تنفيذ التغيير.
    5. تحقق مباشر من النتيجة.

    ## تنفيذ أوامر على مواقع متعددة

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

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

    لا تضع كلمات مرور أو مفاتيح API داخل Scripts بطريقة مكشوفة. استخدم آليات أسرار وإعدادات بيئية مناسبة لبيئتك.

    ## WP-CLI وWordPress Multisite

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

    قبل تنفيذ أمر في شبكة، حدد هل المطلوب تغيير موقع واحد أم الشبكة كلها. الخطأ في هذا التفريق قد يؤثر في مواقع متعددة.

    ابدأ دائمًا باستعلام أو أمر قراءة يوضح نطاق التنفيذ قبل الأمر التغييري.

    ## التعامل مع أخطاء WP-CLI

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

    ابحث عن:

    – هل أنت داخل المسار الصحيح؟
    – هل WP-CLI يستطيع تحميل ووردبريس؟
    – هل إصدار PHP مناسب؟
    – هل الإضافة أو القالب موجود فعلًا؟
    – هل لديك صلاحية كتابة؟
    – هل المشكلة من الخادم أم من ووردبريس نفسه؟

    إذا كان الأمر يحتاج إلى الاتصال بقاعدة البيانات، راجع إعدادات الاتصال وسجل الخادم بدل تغيير `wp-config.php` عشوائيًا.

    ## مثال على مهمة صيانة بسيطة

    افترض أنك تريد فحص حالة الإضافات في موقع قبل تحديثها. يمكنك تنفيذ:

    “`bash
    wp core version
    wp plugin list
    wp plugin update –all –dry-run
    “`

    بعد مراجعة النتائج، تأخذ نسخة احتياطية، ثم تحدّث ما تحتاجه، ثم تختبر الصفحات الأساسية.

    هذا أسلوب أفضل من تشغيل تحديث شامل أولًا ثم البحث عن سبب التعطل إذا حدث.

    ## متى تستخدم WP-CLI بدل لوحة التحكم؟

    استخدم لوحة التحكم عندما تكون المهمة بسيطة وتحتاج رؤية رسومية واضحة. استخدم WP-CLI عندما تحتاج تكرار المهمة، أو العمل من خادم بعيد، أو البحث عن معلومات بسرعة، أو تنفيذ عمليات إدارية منظمة.

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

    ## عادات أمان مهمة

    – نفذ الأوامر بحساب وصلاحيات مناسبة.
    – لا تلصق أوامر غير مفهومة في خادم الإنتاج.
    – راجع المسار قبل أي أمر تغييري.
    – خذ نسخة احتياطية للعمليات الحساسة.
    – استخدم Staging للتجارب.
    – لا تخزن الأسرار داخل Scripts عامة أو مستودعات مكشوفة.
    – استخدم `–dry-run` عندما يكون متاحًا ومناسبًا.

    ## أسئلة شائعة

    ### هل WP-CLI مناسب للمبتدئين؟

    يمكن تعلمه تدريجيًا. ابدأ بأوامر القراءة مثل `wp core version` و`wp plugin list`، ثم انتقل إلى أوامر التغيير بعد فهم أثرها.

    ### هل يمكن إدارة ووردبريس دون لوحة التحكم باستخدام WP-CLI؟

    يمكن تنفيذ عدد كبير من مهام الإدارة، لكن ليس كل ما يوجد في الإضافات أو القوالب له أمر مباشر في WP-CLI.

    ### هل WP-CLI خطر؟

    الأداة نفسها ليست المشكلة. الخطر يأتي من تنفيذ أوامر تغييرية دون فهم نطاقها أو دون نسخة احتياطية مناسبة.

    ### ما فائدة dry-run؟

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

    ### هل يمكن استخدام WP-CLI مع WordPress Multisite؟

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

    ## الخاتمة

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

    ابدأ بخمسة أوامر فقط: `wp –info`، `wp core version`، `wp plugin list`، `wp theme list` و`wp plugin update –all –dry-run`. عندما تصبح هذه الأوامر مألوفة، يمكنك توسيع معرفتك تدريجيًا نحو الأتمتة والصيانة المتقدمة.

    ## اقتراحات الربط الداخلي

    – **أفضل طريقة لتثبيت وإدارة إضافات ووردبريس** — نص الرابط: «إدارة الإضافات وتحديثها».
    – **إنشاء إضافة ووردبريس بسيطة للمبتدئين** — نص الرابط: «تطوير إضافة ووردبريس».
    – **دليل إدارة WordPress Multisite للمطورين وأصحاب الشبكات** — نص الرابط: «إدارة شبكة WordPress Multisite».

    ## Alt Text مقترح للصور

    – نافذة طرفية تعرض أمر wp –info.
    – نتيجة wp plugin list في موقع ووردبريس.
    – معاينة تحديثات الإضافات باستخدام WP-CLI وdry-run.
    – قائمة قوالب ووردبريس عبر WP-CLI.
    – تشغيل أمر WP-CLI من مجلد موقع ووردبريس.

  • إنشاء إضافة ووردبريس بسيطة للمبتدئين

    # إنشاء إضافة ووردبريس بسيطة للمبتدئين

    **الرابط الدائم المقترح (Slug):** `build-wordpress-plugin`

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

    **التصنيف:** الإضافات

    **الوسوم:** تطوير إضافات ووردبريس، PHP، WordPress Hooks، برمجة ووردبريس

    **الكلمة المفتاحية الرئيسية:** تطوير إضافات ووردبريس

    **كلمات مفتاحية ثانوية:** إنشاء إضافة ووردبريس، WordPress Plugin development، PHP ووردبريس

    ## مقدمة

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

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

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

    ## ما الذي تحتاجه قبل البدء؟

    ستحتاج إلى:

    – موقع ووردبريس تجريبي أو بيئة Staging.
    – محرر نصوص أو محرر أكواد.
    – معرفة أساسية بملفات PHP.
    – وصول إلى مجلد `wp-content/plugins` إذا كنت تعمل من الخادم.

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

    ## بنية الإضافة

    أنشئ مجلدًا باسم:

    “`text
    simple-content-note
    “`

    ثم أنشئ داخله ملفًا رئيسيًا باسم:

    “`text
    simple-content-note.php
    “`

    ستبدو البنية هكذا:

    “`text
    wp-content/
    └── plugins/
    └── simple-content-note/
    └── simple-content-note.php
    “`

    يمكن أن تكون الإضافات الكبيرة مقسمة إلى ملفات ومجلدات أكثر، لكن المثال الحالي لا يحتاج إلى ذلك.

    ## أضف رأس الإضافة

    ابدأ الملف بالكود التالي:

    “`php
    <?php
    /**
    * Plugin Name: Simple Content Note
    * Description: Adds a small note below published post content.
    * Version: 1.0.0
    * Author: Site Admin
    */
    “`

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

    ## ما هو Hook؟

    الـHook هو نقطة يوفرها ووردبريس للسماح بإضافة كودك في مرحلة محددة من تنفيذ النظام.

    هناك نوعان مشهوران:

    – **Action:** لتنفيذ شيء ما عند حدوث حدث.
    – **Filter:** لتعديل قيمة قبل أن تعاد أو تعرض.

    سنستخدم Filter لأنه يسمح لنا بتعديل محتوى المقال قبل عرضه.

    ## بناء أول دالة

    أضف الدالة التالية:

    “`php
    function simple_content_note( $content ) {
    if ( is_single() && is_main_query() && in_the_loop() ) {
    $content .= '

    هذه إضافة تجريبية مبنية باستخدام ووردبريس.

    ‘;
    }

    return $content;
    }
    “`

    ثم اربطها بالفلتر:

    “`php
    add_filter( ‘the_content’, ‘simple_content_note’ );
    “`

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

    ## الملف كاملًا

    يمكنك وضع الكود التالي كما هو داخل الملف:

    “`php
    <?php
    /**
    * Plugin Name: Simple Content Note
    * Description: Adds a small note below published post content.
    * Version: 1.0.0
    * Author: Site Admin
    */

    function simple_content_note( $content ) {
    if ( is_single() && is_main_query() && in_the_loop() ) {
    $content .= '

    هذه إضافة تجريبية مبنية باستخدام ووردبريس.

    ‘;
    }

    return $content;
    }

    add_filter( ‘the_content’, ‘simple_content_note’ );
    “`

    هذا المثال صغير عمدًا. الهدف أن تفهم مكان كودك وكيف يمر عبر ووردبريس، لا أن تبني نظامًا كبيرًا دفعة واحدة.

    ## كيف تفعل الإضافة؟

    بعد رفع المجلد إلى `wp-content/plugins`، افتح لوحة التحكم ثم **إضافات**. ستجد الإضافة باسمها، ويمكنك الضغط على **تفعيل**.

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

    ## تحسين المثال باستخدام escaping

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

    مثلًا عند طباعة نص من متغير، يمكن استخدام `esc_html()` للنصوص HTML أو `esc_attr()` للسمات بحسب مكان الاستخدام.

    مثال:

    “`php
    $message = ‘رسالة آمنة’;
    echo ‘

    ‘ . esc_html( $message ) . ‘

    ‘;
    “`

    هذا جزء من مبدأ أوسع: البيانات القادمة من المستخدم أو قاعدة البيانات لا ينبغي افتراض أنها جاهزة للإخراج في كل سياق.

    ## أضف CSS دون كتابة style داخل المحتوى

    عندما يصبح المشروع حقيقيًا، من الأفضل فصل التنسيق عن HTML. أنشئ ملفًا باسم:

    “`text
    style.css
    “`

    ثم أضف:

    “`css
    .simple-content-note {
    padding: 12px;
    margin-top: 20px;
    border: 1px solid #ddd;
    border-radius: 4px;
    }
    “`

    بعد ذلك يمكنك تحميل الملف من خلال `wp_enqueue_style()` بدل إدراج CSS مباشرة في PHP.

    “`php
    function simple_content_note_assets() {
    wp_enqueue_style(
    ‘simple-content-note’,
    plugin_dir_url( __FILE__ ) . ‘style.css’,
    array(),
    ‘1.0.0’
    );
    }

    add_action( ‘wp_enqueue_scripts’, ‘simple_content_note_assets’ );
    “`

    الهدف من ذلك أن يبقى الكود منظمًا وقابلًا للصيانة.

    ## استخدم أسماء Functions فريدة

    لا تستخدم اسمًا عامًا مثل:

    “`php
    function add_note() {}
    “`

    قد يكون الاسم مستخدمًا من قالب أو إضافة أخرى. في المثال استخدمنا بادئة `simple_content_note` حتى تقل احتمالية التصادم.

    في المشاريع الكبيرة يستخدم المطورون Prefix خاصًا بالمشروع أو Namespace عند بناء كود حديث.

    ## لا تعدل ملفات نواة ووردبريس

    إذا أردت تغيير سلوك ووردبريس، ابحث أولًا عن Hook مناسب. تعديل ملفات النواة يجعل التحديثات أصعب ويمكن أن يحذف تغييراتك.

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

    ## كيف تختبر الإضافة؟

    ابدأ باختبارات صغيرة:

    1. فعّل الإضافة على Staging.
    2. افتح مقالة منشورة.
    3. تأكد من ظهور الرسالة مرة واحدة.
    4. افتح الصفحة الرئيسية وتأكد من عدم تكرار الإخراج في مكان غير مقصود.
    5. افتح صفحة تصنيف أو أرشيف واختبر السلوك المتوقع.
    6. عطّل الإضافة وتأكد من اختفاء التغيير.

    إذا كان موقعك يحتوي على Cache، امسح الكاش أثناء الاختبار عند الحاجة حتى لا ترى نسخة قديمة.

    ## مثال آخر: إضافة نص باستخدام Action

    لفهم الفرق بين Filter وAction، يمكن إضافة رسالة إلى تذييل الصفحة باستخدام Hook مناسب، لكن لا يُنصح بإرسال HTML من جميع الإجراءات دون فهم مكان تنفيذها.

    المهم أن تتذكر القاعدة الأساسية: Filter يعيد قيمة معدلة، بينما Action ينفذ كودًا عند نقطة معينة.

    ## تنظيم الإضافة عند نموها

    عندما يتوسع المشروع، انتقل من ملف واحد إلى بنية أوضح، مثل:

    “`text
    simple-content-note/
    ├── simple-content-note.php
    ├── includes/
    │ └── class-plugin.php
    ├── assets/
    │ ├── css/
    │ └── js/
    └── readme.txt
    “`

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

    ## أخطاء شائعة عند المبتدئين

    ### نسيان `return $content`

    إذا استخدمت `the_content` Filter ولم تُرجع المحتوى، فقد تختفي المقالة من الصفحة.

    ### تنفيذ الكود في كل طلب

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

    ### عدم اختبار الكود على Staging

    خطأ Syntax أو Fatal Error يمكن أن يؤثر في الموقع. البيئة التجريبية أفضل مكان للتعلم.

    ### استخدام أسماء دوال عامة

    استخدم Prefix أو Namespace لتقليل احتمالات التصادم.

    ## متى تحتاج إلى Plugin ومتى يكفي Snippet؟

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

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

    ## أسئلة شائعة

    ### هل يمكن إنشاء إضافة ووردبريس بدون خبرة كبيرة؟

    نعم، الإضافات البسيطة يمكن بناؤها بتعلم أساسيات PHP وHooks وبنية ملفات ووردبريس، ثم التدرج إلى مشاريع أكبر.

    ### هل يجب استخدام Class في كل إضافة؟

    ليس في الإضافة الصغيرة. يمكن أن يبدأ المشروع بدوال منظمة، ثم تنتقل إلى Classes أو Namespaces عندما يكبر حجم الكود.

    ### أين أضع ملفات الإضافة؟

    عادة داخل `wp-content/plugins/اسم-الإضافة`، مع ملف PHP رئيسي يحتوي على رأس الإضافة.

    ### هل تعديل ملفات ووردبريس الأساسية آمن؟

    ليس خيارًا مناسبًا للتخصيصات المعتادة. استخدم Hooks والإضافات والطبقات التي يوفرها النظام حتى تبقى التحديثات ممكنة.

    ## الخاتمة

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

    بعد إتقان هذه الخطوات يمكنك الانتقال إلى إعدادات لوحة التحكم، صفحات الإدارة، REST API، WP-CLI والربط مع الخدمات الخارجية. ابدأ بمشروع صغير على Staging، واختبر كل تغيير قبل نقله إلى موقعك الأساسي.

    ## اقتراحات الربط الداخلي

    – **ما هي إضافات ووردبريس وكيف تختارها بأمان؟** — نص الرابط: «اختيار إضافات ووردبريس بأمان».
    – **كيف تعرف سبب تعارض إضافات ووردبريس؟** — نص الرابط: «تشخيص تعارض الإضافات».
    – **كيف تستخدم WP-CLI لإدارة ووردبريس؟** — نص الرابط: «إدارة ووردبريس عبر WP-CLI».

    ## Alt Text مقترح للصور

    – بنية ملفات إضافة ووردبريس بسيطة داخل مجلد plugins.
    – ملف PHP يحتوي على رأس إضافة ووردبريس.
    – مثال على استخدام the_content Filter في ووردبريس.
    – شاشة تفعيل إضافة مخصصة من لوحة تحكم ووردبريس.
    – مثال على ملف CSS داخل إضافة ووردبريس.

  • كيف تعرف سبب تعارض إضافات ووردبريس؟

    # كيف تعرف سبب تعارض إضافات ووردبريس؟

    **الرابط الدائم المقترح (Slug):** `wordpress-plugin-conflict`

    **وصف الميتا:** تعلّم كيف تشخّص تعارض إضافات ووردبريس خطوة بخطوة، وتحدد مصدر الخطأ بين الإضافات والقالب وإصدار PHP دون تعريض الموقع لمخاطر غير ضرورية.

    **التصنيف:** الإضافات

    **الوسوم:** تعارض إضافات ووردبريس، أخطاء ووردبريس، Debugging، PHP

    **الكلمة المفتاحية الرئيسية:** تعارض إضافات ووردبريس

    **كلمات مفتاحية ثانوية:** حل تعارض إضافات، أخطاء ووردبريس، تشخيص مشاكل ووردبريس

    ## مقدمة

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

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

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

    ## ما المقصود بتعارض الإضافات؟

    يحدث التعارض عندما يتسبب مكوّنان برمجيان في سلوك غير متوقع عند العمل معًا. قد يكون المكونان إضافة وإضافة، أو إضافة وقالب، أو إضافة وإصدار من ووردبريس أو PHP.

    من أمثلة الأعراض:

    – توقف صفحة أو وظيفة معينة.
    – خطأ JavaScript في المتصفح.
    – رسالة Critical Error من ووردبريس.
    – بطء ظهر بعد تفعيل أداة جديدة.
    – عدم حفظ إعدادات أو بيانات نموذج.
    – اختفاء عنصر من المحرر أو لوحة التحكم.

    ليس كل خطأ سببه تعارض. لذلك تبدأ عملية التشخيص بجمع الأدلة.

    ## الخطوة الأولى: سجل ما تغير

    اسأل: ما الذي حدث قبل ظهور المشكلة؟

    هل تم تحديث إضافة؟ هل تغير إصدار PHP؟ هل تم تثبيت قالب أو إضافة؟ هل تغيرت إعدادات التخزين المؤقت؟ هل تم تعديل ملف في الموقع؟

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

    ## الخطوة الثانية: حدد نطاق المشكلة

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

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

    كلما كان نطاق المشكلة محددًا، كان العزل أسرع.

    ## الخطوة الثالثة: خذ نسخة احتياطية

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

    في الموقع الحساس، استخدم Staging. هذه البيئة تسمح لك بتكرار المشكلة دون التأثير في الزوار.

    ## الخطوة الرابعة: استخدم وضع الاسترداد عندما يتعطل الموقع

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

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

    ## الخطوة الخامسة: اختبر التعارض بالعزل

    أفضل طريقة هي تغيير عامل واحد في كل مرة.

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

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

    ## القالب قد يكون سبب المشكلة

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

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

    ## افحص Console في المتصفح

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

    ستجد أحيانًا رسائل مثل ملف JavaScript لم يُحمّل، أو دالة غير معرفة، أو خطأ في بناء طلب. هذه الرسائل لا تعني تلقائيًا أن الملف هو السبب، لكنها تمنحك نقطة بحث.

    لاحظ اسم الملف والمسار ورقم السطر إن ظهر. ثم قارن ذلك بالإضافة أو القالب الذي يوفر الملف.

    ## استخدم Debugging في ووردبريس بحذر

    يمكن تمكين التسجيل في بيئة الاختبار باستخدام `WP_DEBUG` و`WP_DEBUG_LOG` داخل `wp-config.php`.

    مثال:

    “`php
    define( ‘WP_DEBUG’, true );
    define( ‘WP_DEBUG_LOG’, true );
    define( ‘WP_DEBUG_DISPLAY’, false );
    “`

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

    بعد الاختبار راجع ملف `wp-content/debug.log` عندما تكون صلاحيات الخادم تسمح بذلك.

    ## كيف تفرق بين التحذير والخطأ الحقيقي؟

    ليس كل سطر في سجل الأخطاء هو سبب المشكلة. قد تجد تحذيرًا قديمًا لا علاقة له بالعطل الحالي.

    ركز على:

    – وقت ظهور الخطأ.
    – اسم الإضافة أو الملف.
    – الدالة التي فشلت.
    – المسار الكامل للملف.
    – هل يتكرر الخطأ أثناء تنفيذ الوظيفة المتعطلة؟

    اربط السجل بالحدث نفسه بدل معالجة أول رسالة تراها.

    ## مشكلة شائعة: إصدار PHP

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

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

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

    ## مشكلة شائعة: مكتبات JavaScript المشتركة

    قد تعتمد إضافتان على مكتبة JavaScript نفسها أو تقومان بتحميل نسخة مختلفة منها. النتيجة قد تكون تعارضًا في الواجهة دون أي خطأ PHP.

    في هذه الحالة تساعد رسائل Console وNetwork في أدوات المتصفح. افحص الملف الذي يحدث فيه الخطأ وتأكد من أي إضافة أو قالب يقوم بتحميله.

    ## ماذا تفعل إذا اكتشفت الإضافة المسببة؟

    لديك عدة خيارات:

    1. تحديث الإضافة إذا كانت هناك نسخة إصلاحية.
    2. مراجعة إعدادات الإضافة لتجنب الوظيفة المتعارضة.
    3. تعطيل جزء محدد منها إذا كانت توفر إعدادًا لذلك.
    4. التواصل مع المطور مع وصف المشكلة وبيئة التشغيل.
    5. استبدال الإضافة عندما لا يوجد حل مستقر.

    لا تعتمد على تعديل ملفات الإضافة مباشرة إذا كان لديك بديل موثق، لأن التعديل اليدوي قد يختفي مع التحديث التالي.

    ## كيف تكتب تقريرًا جيدًا للمطور؟

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

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

    ## كيف تمنع التعارضات مستقبلًا؟

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

    كذلك لا تغير عدة عناصر مهمة في يوم واحد. عندما تحدث مشكلة بعد سلسلة تغييرات، يصبح تحديد السبب أكثر صعوبة.

    ## مثال عملي

    افترض أن المحرر توقف بعد تحديث إضافة للحقول. أولًا افتح الموقع في نافذة خاصة واختبر بحساب مناسب. ثم تحقق من Console. إذا ظهر خطأ يحمل ملفًا من الإضافة، أنشئ نسخة Staging، عطّل الإضافة، ثم اختبر المحرر.

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

    ## أسئلة شائعة

    ### هل تعارض الإضافات يمكن أن يحذف محتوى الموقع؟

    التعارض وحده لا يعني فقدان البيانات، لكن بعض الأخطاء قد تؤثر في عمليات الحفظ أو الترحيل. لهذا يظل النسخ الاحتياطي والاختبار المسبق مهمين.

    ### هل تعطيل جميع الإضافات هو الحل؟

    هو اختبار عزل مفيد، لكنه لا يكون دائمًا مناسبًا في الموقع الحي. الأفضل استخدام Staging عندما تتداخل الإضافات مع وظائف أساسية.

    ### هل يمكن معرفة الإضافة المسببة من رسالة الخطأ؟

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

    ### هل يجب تعديل كود الإضافة لحل المشكلة؟

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

    ## الخاتمة

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

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

    ## اقتراحات الربط الداخلي

    – **أفضل طريقة لتثبيت وإدارة إضافات ووردبريس** — نص الرابط: «إدارة الإضافات وتحديثها بأمان».
    – **ما هي إضافات ووردبريس وكيف تختارها بأمان؟** — نص الرابط: «اختيار الإضافة المناسبة».
    – **إنشاء إضافة ووردبريس بسيطة للمبتدئين** — نص الرابط: «تطوير إضافة ووردبريس بسيطة».

    ## Alt Text مقترح للصور

    – رسالة خطأ حرجة في ووردبريس بعد تعارض إضافة.
    – تبويب Console يعرض خطأ JavaScript في موقع ووردبريس.
    – ملف debug.log يحتوي على خطأ PHP من إضافة.
    – تعطيل إضافة من لوحة تحكم ووردبريس لعزل المشكلة.
    – اختبار موقع ووردبريس على قالب افتراضي في بيئة Staging.

  • أفضل طريقة لتثبيت وإدارة إضافات ووردبريس

    # أفضل طريقة لتثبيت وإدارة إضافات ووردبريس

    **الرابط الدائم المقترح (Slug):** `install-manage-wordpress-plugins`

    **وصف الميتا:** دليل عملي لتثبيت إضافات ووردبريس وإدارتها وتحديثها بأمان، مع خطوات لاختبار الإضافات وتقليل التعارض والحفاظ على استقرار الموقع.

    **التصنيف:** الإضافات

    **الوسوم:** إضافات ووردبريس، تحديث ووردبريس، إدارة الإضافات، أمان الموقع

    **الكلمة المفتاحية الرئيسية:** تثبيت إضافات ووردبريس

    **كلمات مفتاحية ثانوية:** إدارة إضافات ووردبريس، تحديث إضافات ووردبريس، تعارض الإضافات

    ## مقدمة

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

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

    ## قبل تثبيت أي إضافة

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

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

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

    ## تثبيت الإضافة من لوحة التحكم

    لتثبيت إضافة من لوحة ووردبريس:

    1. افتح **إضافات > أضف جديدًا**.
    2. ابحث باسم الوظيفة أو الإضافة.
    3. افتح صفحة الإضافة واقرأ التفاصيل.
    4. راجع آخر تحديث ومتطلبات النظام.
    5. اضغط **التثبيت الآن**.
    6. بعد اكتمال التثبيت اضغط **تفعيل**.
    7. افتح إعدادات الإضافة ونفذ الحد الأدنى اللازم فقط.

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

    ## تثبيت إضافة من ملف ZIP

    بعض الإضافات التجارية تأتي كملف ZIP رسمي. في هذه الحالة يمكنك استخدام **إضافات > أضف جديدًا > رفع إضافة**، ثم اختيار الملف وتثبيته وتفعيله.

    لا تستخدم ملفات ZIP تم تعديلها أو إعادة توزيعها من مصادر غير معروفة. وجود اسم الإضافة الصحيح لا يثبت سلامة الملف.

    بعد رفع الإضافة، تأكد من أن بنية الملفات صحيحة وأن التثبيت تم دون رسائل خطأ. وإذا كانت الإضافة مدفوعة، احتفظ بمصدر الشراء وبيانات الترخيص في مكان آمن بدل البحث عن نسخ بديلة عند كل تحديث.

    ## كيف تنظم قائمة الإضافات؟

    راجع القائمة كل فترة وقسم الإضافات ذهنيًا إلى:

    – إضافات أساسية لوظائف الموقع.
    – إضافات تحسين وأداء.
    – إضافات إدارة ومراقبة.
    – إضافات تستخدمها في مهام مؤقتة.

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

    ## التحديثات: تلقائية أم يدوية؟

    التحديثات مهمة لأسباب تتعلق بالأمان والإصلاحات والتوافق. لكن التحديث لا يعني أن تضغط كل أزرار التحديث في اللحظة نفسها.

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

    قبل تحديث إضافة مهمة:

    1. تأكد من وجود نسخة احتياطية حديثة.
    2. اقرأ سجل التغييرات عند توفره.
    3. تحقق من توافق الإصدار الجديد.
    4. اختبر على Staging عندما تكون الوظيفة حساسة.
    5. حدث الإضافة.
    6. افتح الوظيفة التي تعتمد عليها واختبرها.
    7. راقب الموقع بعد التحديث.

    ## لماذا يجب أن تختبر بعد التحديث؟

    لأن الإضافة لا تعمل في فراغ. هي تتفاعل مع ووردبريس والقالب وإضافات أخرى وإصدار PHP وإعدادات الخادم.

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

    ## استخدام Staging بذكاء

    نسخة Staging هي نسخة منفصلة من الموقع تستخدم للاختبار قبل التغيير على الموقع الأساسي.

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

    إذا كان لديك متجر، اختبر السلة والطلب والحساب. وإذا كان لديك موقع محتوى، اختبر المحرر والبحث والتعليقات والنماذج والإعلانات إن كانت جزءًا من تجربة الموقع.

    ## ماذا تفعل عند ظهور خطأ بعد التفعيل؟

    لا تبدأ بحذف ملفات عشوائية. اتبع منهج العزل.

    1. سجل وقت حدوث المشكلة وما الذي تغير.
    2. عطّل الإضافة التي ثبتها أو حدثتها مؤخرًا.
    3. تحقق هل اختفت المشكلة.
    4. إذا اختفت، راجع توافق الإضافة وسجل الدعم.
    5. إذا لم تختف، اختبر الإضافات الأخرى والقالب.

    عند امتلاك الوصول إلى الخادم، يمكن الاستفادة من سجلات PHP والخادم للوصول إلى اسم الملف أو الدالة التي تسبب الخطأ بدل التخمين.

    ## تعطيل الإضافة لا يعني حذفها فورًا

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

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

    ## هل الإضافات المعطلة تشكل خطرًا؟

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

    ## تحديث جميع الإضافات دفعة واحدة

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

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

    ## إدارة الإضافات باستخدام WP-CLI

    يمكن للمطورين ومديري الخوادم استخدام WP-CLI لإدارة الإضافات من الطرفية.

    لعرض الإضافات:

    “`bash
    wp plugin list
    “`

    لتحديث إضافة محددة:

    “`bash
    wp plugin update plugin-slug
    “`

    ولعرض الإضافات التي يمكن تحديثها:

    “`bash
    wp plugin update –all –dry-run
    “`

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

    ## قائمة فحص شهرية

    خصص عدة دقائق كل شهر لهذه المراجعة:

    – هل توجد إضافات غير مستخدمة؟
    – هل هناك تحديثات معلقة؟
    – هل ظهرت تحذيرات أمنية؟
    – هل هناك إضافتان تؤديان الوظيفة نفسها؟
    – هل يعمل الموقع بعد آخر تحديث؟
    – هل هناك إضافة لم تعد متوافقة مع إصدار PHP أو ووردبريس المستخدم؟

    هذه المراجعة الصغيرة تقلل تراكم الديون التقنية.

    ## أسئلة شائعة

    ### هل يجب تحديث إضافات ووردبريس فورًا؟

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

    ### هل يمكن تثبيت أكثر من إضافة في الوقت نفسه؟

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

    ### هل إضافة واحدة يمكن أن تسبب تعارضًا مع الموقع كله؟

    نعم، خصوصًا إذا كانت تتعامل مع وظائف أساسية أو مكتبات مشتركة. لهذا يفيد أسلوب العزل والاختبار.

    ### هل WP-CLI مناسب للمبتدئين؟

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

    ## الخاتمة

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

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

    ## اقتراحات الربط الداخلي

    – **ما هي إضافات ووردبريس وكيف تختارها بأمان؟** — نص الرابط: «اختيار إضافات ووردبريس بأمان».
    – **كيف تعرف سبب تعارض إضافات ووردبريس؟** — نص الرابط: «تشخيص تعارض الإضافات».
    – **WP-CLI في ووردبريس** — نص الرابط: «إدارة الإضافات باستخدام WP-CLI».

    ## Alt Text مقترح للصور

    – شاشة تثبيت إضافة جديدة من لوحة ووردبريس.
    – صفحة قائمة إضافات ووردبريس مع أزرار التحديث والتفعيل.
    – شاشة تحديث إضافة ووردبريس داخل لوحة التحكم.
    – مثال على قائمة الإضافات في WP-CLI.
    – بيئة Staging مخصصة لاختبار تحديثات ووردبريس.

  • ما هي إضافات ووردبريس وكيف تختارها بأمان؟

    # ما هي إضافات ووردبريس وكيف تختارها بأمان؟

    **الرابط الدائم المقترح (Slug):** `wordpress-plugins-guide`

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

    **التصنيف:** الإضافات

    **الوسوم:** إضافات ووردبريس، أمان ووردبريس، تطوير ووردبريس، إدارة الموقع

    **الكلمة المفتاحية الرئيسية:** إضافات ووردبريس

    **كلمات مفتاحية ثانوية:** اختيار إضافات ووردبريس، أمان إضافات ووردبريس، أفضل ممارسات الإضافات

    ## مقدمة

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

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

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

    ## متى تحتاج إلى إضافة أصلًا؟

    ابدأ بالسؤال الأهم: هل تحتاج فعلًا إلى إضافة؟

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

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

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

    ## الخطوة الأولى: حدّد الوظيفة المطلوبة بدقة

    قسّم احتياجك إلى ثلاثة عناصر:

    1. الوظيفة الأساسية التي يجب أن تؤديها الإضافة.
    2. الوظائف الثانوية التي يمكن الاستغناء عنها.
    3. القيود الخاصة بموقعك، مثل إصدار ووردبريس أو PHP أو نوع الاستضافة.

    كلما كانت القائمة أوضح، قل احتمال تثبيت إضافة ضخمة تؤدي عشرات الوظائف بينما تحتاج واحدة فقط.

    ## الخطوة الثانية: افحص مصدر الإضافة

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

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

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

    ## الخطوة الثالثة: راجع تاريخ التحديث

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

    راجع:

    – تاريخ آخر تحديث.
    – توافقها مع إصدارات ووردبريس الحديثة.
    – سجل التغييرات (Changelog) عند توفره.
    – صفحة الدعم والمشكلات المعلنة.
    – وجود تحديثات أمنية متكررة وطريقة تعامل المطور معها.

    لا تتعامل مع تاريخ التحديث باعتباره حكمًا منفردًا. اجمع هذه الإشارات معًا.

    ## الخطوة الرابعة: اقرأ المراجعات بطريقة صحيحة

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

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

    ركز على المشكلات المتعلقة بالوظيفة التي تحتاجها أنت، وليس على الآراء العامة فقط.

    ## الخطوة الخامسة: افحص التوافق مع موقعك

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

    يمكنك معرفة إصدار ووردبريس من لوحة التحكم، أما إصدار PHP فعادة يظهر ضمن **أدوات > صحة الموقع > معلومات** حسب إعدادات الموقع.

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

    ## الخطوة السادسة: ابدأ بأقل إعدادات ممكنة

    بعد تثبيت الإضافة، لا تفعل كل الخيارات دفعة واحدة. ابدأ بإعداد الوظيفة الأساسية فقط، ثم راقب الموقع.

    اختبر الصفحات المهمة:

    – الصفحة الرئيسية.
    – المقالات.
    – نماذج التواصل.
    – تسجيل الدخول.
    – صفحات المتجر إذا كان الموقع يستخدم متجرًا.

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

    ## كم عدد الإضافات المناسب؟

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

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

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

    ## كيف تكتشف الإضافات غير الضرورية؟

    افتح قائمة الإضافات واسأل عن كل واحدة:

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

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

    ## ماذا تفعل عند حدوث تعارض؟

    إذا ظهرت المشكلة مباشرة بعد تثبيت إضافة جديدة، لا تغيّر عشرات الإعدادات دفعة واحدة.

    اتبع هذا التسلسل:

    1. سجّل ما تغير قبل ظهور المشكلة.
    2. عطّل الإضافة الجديدة مؤقتًا.
    3. اختبر الموقع.
    4. إذا عادت الأمور لطبيعتها، راجع إعدادات الإضافة وسجل الدعم.
    5. اختبرها على بيئة تجريبية مع القالب والإضافات الأساسية نفسها.

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

    ## الإضافات المدفوعة: هل هي أفضل؟

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

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

    ## كيف تجعل إدارة الإضافات أكثر أمانًا؟

    اعتمد روتينًا بسيطًا:

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

    هذا الأسلوب يقلل المخاطر دون تحويل إدارة الموقع إلى عملية معقدة.

    ## مثال عملي لاتخاذ القرار

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

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

    ## أسئلة شائعة

    ### هل كثرة إضافات ووردبريس تسبب بطء الموقع؟

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

    ### هل يجب حذف الإضافة بعد تعطيلها؟

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

    ### هل الإضافات المجانية آمنة؟

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

    ### هل أحتاج إلى Staging لكل إضافة؟

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

    ### ماذا أفعل إذا توقفت الإضافة عن العمل بعد التحديث؟

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

    ## الخاتمة

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

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

    ## اقتراحات الربط الداخلي

    – **أهم إعدادات ووردبريس بعد التثبيت مباشرة** — نص الرابط: «إعدادات ووردبريس الأساسية».
    – **كيف تعرف سبب تعارض إضافات ووردبريس؟** — نص الرابط: «حل تعارض إضافات ووردبريس».
    – **دليل تأمين ووردبريس للمبتدئين والمحترفين** — نص الرابط: «تأمين موقع ووردبريس».

    ## Alt Text مقترح للصور

    – لقطة شاشة لقائمة إضافات ووردبريس داخل لوحة التحكم.
    – شاشة معلومات إضافة ووردبريس تعرض الإصدار وآخر تحديث.
    – مثال على مراجعات إضافة ووردبريس قبل التثبيت.
    – شاشة صحة الموقع التي تعرض إصدار PHP وووردبريس.
    – مقارنة عملية بين إضافات ووردبريس قبل الاختيار.