ما هو ثيم ووردبريس الفرعي؟
ثيم ووردبريس الفرعي هو ثيم يرث الوظائف والميزات والتصميم من ثيم آخر يسمى الثيم الرئيسي. بدلاً من تعديل ملفات الثيم الرئيسي مباشرة، تقوم بإجراء تغييراتك في الثيم الفرعي. هذا يحافظ على تخصيصاتك عندما يتلقى الثيم الرئيسي تحديثات، مما يمنعك من فقدان ساعات من العمل الدقيق.
فكر في الأمر بهذه الطريقة: يوفر الثيم الرئيسي الأساس، ويضيف الثيم الفرعي تعديلاتك فوقه. يقوم ووردبريس بتحميل الثيم الفرعي أولاً، ثم يعود إلى الثيم الرئيسي لأي شيء لم يتم تجاوزه. يعد هذا النموذج من الوراثة أحد أكثر القرارات المعمارية عملية في ووردبريس.
لماذا يجب عليك استخدام ثيم فرعي؟
يعتبر استخدام الثيم الفرعي ممارسة قياسية بين مطوري ووردبريس، ولسبب وجيه. إليك المزايا الرئيسية:
- أمان التحديث: تحديثات الثيم الرئيسي لن تكتب فوق تخصيصاتك. يعيش كودك في دليل منفصل يظل غير متأثر أثناء التحديثات.
- سير عمل منظم: تبقى جميع تعديلاتك في مكان واحد، مما يجعل من السهل تتبع ما قمت بتغييره ولماذا.
- سهولة التراجع: إذا تسبب تخصيص في مشاكل، يمكنك ببساطة تعطيل الثيم الفرعي والعودة إلى الثيم الرئيسي على الفور.
- فرصة للتعلم: بناء ثيم فرعي يعلمك كيفية عمل ثيمات ووردبريس دون ضغط بناء واحد من الصفر.
- متوافق مع التحكم في الإصدارات: يمكنك الالتزام فقط بثيمك الفرعي في Git، مما يحافظ على مستودعك نظيفًا ومركزًا على تغييراتك.
الثيم الفرعي مقابل مُخصص ووردبريس: متى تستخدم كل منهما
يقدم ووردبريس عدة طرق لتخصيص مظهر موقعك. يساعدك فهم متى تستخدم ثيم فرعي مقابل مُخصص ووردبريس المدمج في اختيار النهج الصحيح لكل حالة.
| الميزة | الثيم الفرعي | مُخصص ووردبريس |
|---|---|---|
| تغييرات الكود (PHP) | مدعومة بالكامل | غير مدعومة |
| تجاوزات القالب | مدعومة بالكامل | غير مدعومة |
| تعديلات CSS | موصى بها للتغييرات الكبيرة | مناسبة للتعديلات الصغيرة |
| تنجو من تحديثات الثيم | نعم | نعم (إذا كنت تستخدم خيارات الثيم) |
| المهارات التقنية المطلوبة | معرفة أساسية بـ PHP/CSS | لا حاجة للبرمجة |
| معاينة حية | تتطلب تحديث يدوي | معاينة حية مدمجة |
| أثر الأداء | طفيف | طفيف |
استخدم المُخصص عندما تحتاج إلى تغييرات بسيطة في الألوان، أو تعديلات في الخطوط، أو تحميل شعارات. استخدم ثيمًا فرعيًا عندما تحتاج إلى تعديل ملفات القالب، أو إضافة وظائف مخصصة، أو إجراء تغييرات هيكلية على تخطيطك.
كيفية إنشاء ثيم فرعي يدويًا
يتطلب إنشاء ثيم فرعي ملفين فقط: style.css و functions.php. إليك خطوات تفصيلية.
الخطوة 1: إنشاء دليل الثيم الفرعي
اتصل بتثبيت ووردبريس الخاص بك عبر FTP أو مدير ملفات الاستضافة الخاص بك. انتقل إلى wp-content/themes/ وأنشئ مجلدًا جديدًا. قاعدة التسمية هي اسم-الثيم-الرئيسي-فرعي. على سبيل المثال، إذا كان ثيمك الرئيسي هو Astra، قم بتسمية المجلد astra-child.
الخطوة 2: إنشاء style.css
داخل المجلد الجديد الخاص بك، أنشئ ملفًا يسمى style.css مع الرأس التالي:
/*
اسم الثيم: Astra Child
URI الثيم: https://yoursite.com
الوصف: ثيم فرعي لـ Astra
المؤلف: اسمك
القالب: astra
الإصدار: 1.0.0
*/
سطر القالب مهم جدًا. يجب أن يتطابق تمامًا مع اسم دليل الثيم الرئيسي (ليس الاسم المعروض). تحقق من wp-content/themes/ للتأكد من اسم المجلد الدقيق.
الخطوة 3: إنشاء functions.php
أنشئ ملف functions.php يقوم بتحميل أنماط الثيم الرئيسي والفرعي بشكل صحيح:
<?php
function child_theme_enqueue_styles() {
wp_enqueue_style(
'parent-style',
get_template_directory_uri() . '/style.css'
);
wp_enqueue_style(
'child-style',
get_stylesheet_directory_uri() . '/style.css',
array('parent-style'),
wp_get_theme()->get('Version')
);
}
add_action('wp_enqueue_scripts', 'child_theme_enqueue_styles');
تضمن هذه الطريقة تحميل نمط الثيم الرئيسي أولاً، يليه أنماط الثيم الفرعي، مما يحافظ على ترتيب التدرج الصحيح.
الخطوة 4: تفعيل الثيم الفرعي
اذهب إلى المظهر > الثيمات في لوحة تحكم ووردبريس الخاصة بك. يجب أن ترى ثيمك الفرعي مدرجًا. انقر على تفعيل. يجب أن يبدو موقعك مطابقًا لما كان عليه من قبل لأن الثيم الفرعي يرث كل شيء من الثيم الرئيسي.
استخدام إضافة لإنشاء ثيم فرعي
إذا كنت تفضل نهجًا بدون كود، فهناك العديد من الإضافات التي يمكن أن تولد لك ثيمات فرعية. الخيار الأكثر استخدامًا هو إضافة Child Theme Configurator. إليك كيفية عملها:
- قم بتثبيت وتفعيل إضافة Child Theme Configurator من الإضافات > إضافة جديدة.
- انتقل إلى الأدوات > الثيمات الفرعية.
- اختر الثيم الرئيسي من القائمة المنسدلة.
- انقر على تحليل للتحقق من المشكلات المحتملة.
- انقر على إنشاء ثيم فرعي جديد.
- تقوم الإضافة بإنشاء جميع الملفات المطلوبة وتنسخ إعدادات الودجات والقوائم إذا رغبت في ذلك.
هذه الطريقة أسرع ولكن تعطيك تحكمًا أقل في الإعداد الأولي. بالنسبة لمواقع الإنتاج، فإن فهم العملية اليدوية له قيمة لأنه يساعدك في استكشاف المشكلات التي قد تظهر لاحقًا.
التخصيصات الشائعة في الثيم الفرعي
بمجرد تنشيط الثيم الفرعي، يمكنك البدء في إجراء التعديلات. إليك أكثر سيناريوهات التخصيص شيوعًا.
تجاوز ملفات القالب
لتعديل ملف قالب، انسخه من دليل الثيم الرئيسي إلى دليل الثيم الفرعي الخاص بك، مع الحفاظ على نفس هيكل المجلدات. على سبيل المثال، لتخصيص قالب المشاركة الفردية:
- ابحث عن
single.phpفي مجلد الثيم الرئيسي الخاص بك. - انسخه إلى مجلد الثيم الفرعي الخاص بك.
- قم بتحرير النسخة في الثيم الفرعي الخاص بك.
سيستخدم ووردبريس تلقائيًا النسخة الخاصة بالثيم الفرعي بدلاً من النسخة الخاصة بالثيم الرئيسي.
إضافة CSS مخصص
أضف قواعد CSS الخاصة بك إلى ملف style.css في الثيم الفرعي، أسفل تعليق الرأس. نظرًا لأن ورقة الأنماط الفرعية تُحمّل بعد ورقة الأنماط الرئيسية، فإن قواعدك تأخذ الأولوية:
/* خلفية رأس مخصصة */
.site-header {
background-color: #2c3e50;
padding: 20px 0;
}
/* ضبط حجم عنوان المشاركة */
.entry-title {
font-size: 2rem;
line-height: 1.3;
}
إضافة وظائف مخصصة
يعمل ملف functions.php في الثيم الفرعي بالإضافة إلى ملف الثيم الرئيسي (وليس بدلاً منه). يمكنك إضافة رموز قصيرة مخصصة، مناطق ودجات، أنواع مشاركات، أو تعديل السلوك القائم باستخدام هوكات ووردبريس:
// إضافة منطقة ودجات مخصصة
function child_register_sidebar() {
register_sidebar(array(
'name' => 'شريط جانبي مخصص',
'id' => 'custom-sidebar',
'before_widget' => '<div class="widget">',
'after_widget' => '</div>',
));
}
add_action('widgets_init', 'child_register_sidebar');
تخصيص الرأس والتذييل
انسخ header.php أو footer.php من الثيم الرئيسي إلى الثيم الفرعي الخاص بك، ثم قم بتعديلها. هذه هي الطريقة التي تضيف بها عناصر تنقل مخصصة، أو سكربتات تتبع، أو تغييرات هيكلية في هذه المناطق الحيوية.
متى لا يجب استخدام ثيم فرعي
لا تكون الثيمات الفرعية دائمًا الحل المناسب. إليك السيناريوهات التي تجعل البدائل أكثر منطقية:
- تعديلات CSS طفيفة: لعدد قليل من أسطر CSS، استخدم قسم CSS الإضافي في المخصص. إنشاء ثيم فرعي لثلاث قواعد CSS يضيف تعقيدًا غير ضروري.
- إضافات وظيفية: إذا كنت تضيف ميزات غير مرتبطة بالثيم (أنواع مشاركات مخصصة، رموز قصيرة، تكاملات)، استخدم إضافة مخصصة بدلاً من ذلك. هذا يحافظ على وظائفك مستقلة عن الثيم.
- مواقع بناء الصفحات: إذا كنت تبني بالكامل باستخدام Elementor Pro أو منشئي صفحات مشابهين، فإن معظم التخصيصات تحدث داخل المنشئ. إضافة ثيم فرعي تضيف قيمة قليلة هنا.
- ثيمات البداية: إذا كنت تبني تصميمًا مخصصًا تمامًا، ابدأ بثيم بداية مثل Underscores (_s) أو استخدم إطار عمل. يشير الثيم الفرعي إلى أنك تريد الحفاظ على تصميم الثيم الرئيسي.
اختيار ثيم رئيسي لثيمك الفرعي
لا تعمل جميع الثيمات الرئيسية بشكل متساوٍ لتطوير الثيمات الفرعية. ابحث عن ثيمات مكتوبة بشكل جيد، يتم تحديثها بانتظام، ومصممة مع مراعاة القابلية للتوسيع. تشمل خيارين شائعين:
- Astra Pro: معروفة بقاعدة الشيفرة الخفيفة، ونظام الهوكات الواسع، والتوثيق الواضح لمطوري الثيمات الفرعية. يوفر Astra العشرات من هوكات الإجراءات والتصفية خصيصًا لتخصيص الثيمات الفرعية.
- GeneratePress Premium: يقدم قاعدة شيفرة نظيفة ومنظمة مع مكونات معيارية. يسمح نظام الهوكات بإدراج المحتوى في نقاط مختلفة دون تجاوز ملفات القالب.
تحافظ كلا الثيمتين على التوافق مع الإصدارات السابقة عبر التحديثات، وهو أمر أساسي عند بناء ثيمات فرعية تحتاج إلى البقاء مستقرة على مر الزمن.
استكشاف مشكلات الثيم الفرعي الشائعة
حتى المطورين ذوي الخبرة يواجهون مشاكل مع الثيمات الفرعية. إليك حلول لأكثر المشكلات شيوعًا:
| المشكلة | السبب المحتمل | الحل |
|---|---|---|
| الشاشة البيضاء بعد التفعيل | خطأ في بناء جملة PHP في functions.php | الوصول إلى الملفات عبر FTP والتحقق من الأخطاء المطبعية، أو الفواصل المفقودة، أو الأقواس غير المغلقة |
| الأنماط لا تطبق | ترتيب تحميل غير صحيح أو نمط رئيسي مفقود | تحقق من مصفوفة التبعيات في wp_enqueue_style |
| تجاوز القالب لا يعمل | مسار الملف أو التسمية غير صحيحة | تأكد من أن مسار الملف في السمة الفرعية يعكس هيكل السمة الرئيسية تمامًا |
| السمة لا تظهر في لوحة التحكم | قيمة القالب غير صحيحة في style.css | تحقق من أن القالب يتطابق مع اسم دليل السمة الرئيسية (حساس لحالة الأحرف) |
| تشغيل الدوال مرتين | كل من السمة الرئيسية والفرعية تعرف نفس الدالة | استخدم فحوصات function_exists() أو أسماء دوال مختلفة |
مرجع هيكل مجلد السمة الفرعية
تتبع السمة الفرعية المنظمة جيدًا هذا الهيكل:
your-theme-child/
├── style.css (مطلوب - رأس السمة + CSS مخصص)
├── functions.php (مطلوب - تحميل الأنماط + دوال مخصصة)
├── screenshot.png (اختياري - صورة مصغرة للسمة)
├── header.php (اختياري - تجاوز الرأس)
├── footer.php (اختياري - تجاوز التذييل)
├── single.php (اختياري - تجاوز المنشور الفردي)
├── page.php (اختياري - تجاوز الصفحة)
├── template-parts/ (اختياري - تجاوزات جزئية)
│ └── content-single.php
├── assets/ (اختياري - أصول مخصصة)
│ ├── css/
│ ├── js/
│ └── images/
└── woocommerce/ (اختياري - تجاوزات WooCommerce)
└── single-product.php
لمزيد من المعلومات حول اختيار سمة رئيسية، راجع دليلنا حول كيفية اختيار سمة WordPress في 2026. إذا كنت بحاجة إلى مساعدة في تثبيت سمة قبل إنشاء سمة فرعية، تحقق من دليل تثبيت سمة WordPress.
للمزيد من التفاصيل، يرجى الرجوع إلى الوثائق الرسمية: وثائق ثيمات الأطفال, دليل الثيم.
الأسئلة المتكررة
هل أفقد تخصيصات سمة الفرعية عند تحديث WordPress نفسه؟
لا. تحديثات نواة WordPress لا تؤثر على السمات. تبقى سمة الفرعية وسمة الوالد في أدلتهما الخاصة تحت wp-content/themes/. فقط تحديثات السمة الرئيسية قد تسبب مشاكل في التوافق، ولكن ملفات سمة الفرعية تبقى دون تغيير.
هل يمكنني الحصول على سمة فرعية من سمة فرعية (سمة حفيدة)؟
لا يدعم WordPress بشكل أصلي السمات الحفيدة. يمكن أن ترث السمة الفرعية فقط من السمة الرئيسية، وليس من سمة فرعية أخرى. إذا كنت بحاجة إلى عدة طبقات من التخصيص، استخدم مزيجًا من السمة الفرعية والإضافات المخصصة.
هل ستبطئ سمة فرعية موقعي الإلكتروني؟
تأثير الأداء لسمة فرعية ضئيل. يقوم WordPress بتحميل ملف إضافي style.css و functions.php، مما يضيف جزءًا من الألف من الثانية إلى وقت تحميل الصفحة. الحمل الزائد غير قابل للقياس في ظروف العالم الحقيقي.
هل يمكنني استخدام سمة فرعية مع أي سمة WordPress؟
تقنيًا نعم، ولكن بعض السمات تعمل مع السمات الفرعية بشكل أكثر موثوقية من غيرها. السمات التي تتبع معايير ترميز WordPress وتستخدم أنظمة الخطاف المناسبة أسهل في التمديد. السمات التي تعتمد بشكل كبير على المسارات الثابتة أو الأطر الملكية قد تسبب سلوكًا غير متوقع.
كيف يمكنني نقل سمة فرعية من موقع تجريبي إلى الإنتاج؟
انسخ مجلد السمة الفرعية بالكامل من wp-content/themes/your-child-theme/ إلى نفس الموقع على خادم الإنتاج الخاص بك. ثم قم بتفعيلها من لوحة تحكم WordPress. إذا كانت سمة الفرعية تشير إلى عناوين URL محددة، قم بتحديثها بعد النقل.
هل يجب أن أستخدم سمة فرعية مع سمة بدء مثل Underscores؟
تم تصميم سمات البدء مثل Underscores ليتم تعديلها مباشرة. إنها نقاط انطلاق للسمات المخصصة، وليست كسمات رئيسية للسمات الفرعية. قم بتعديلها مباشرة وتتبع التغييرات باستخدام التحكم في الإصدارات بدلاً من ذلك.
ماذا يحدث إذا قمت بإلغاء تنشيط السمة الرئيسية؟
إذا تم إلغاء تنشيط السمة الرئيسية أو حذفها، ستتعطل السمة الفرعية. لا يمكن لـ WordPress تحميل سمة فرعية بدون سمة والدها. احتفظ دائمًا بالسمة الرئيسية مثبتة، حتى إذا كنت تستخدم السمة الفرعية فقط.
ابنِ على أساس متين
توفر Astra Pro دعمًا واسعًا للخطافات وبنية كود نظيفة، مما يجعلها سمة رئيسية موثوقة لمشاريع السمات الفرعية الخاصة بك.
استكشف Astra Pro →


