يا للدهشة! الدليل النهائي لأنواع المقالات المخصصة في WordPress: من الصفر إلى الإتقان.

قراءة 3 دقائق
2026-03-11
2026-06-04
2,123
أنا أحصل على عمولة عند التسوق عبر الروابط أدناه، ولا يُضاف أي تكلفة عليك.

ما هي أنواع المقالات المخصصة في WordPress؟

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

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

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

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

لماذا تستخدم أنواع المقالات المخصصة؟

في تطوير المواقع الإلكترونية، يعد تنظيم المحتوى بشكل صحيح نصف المعركة. ومع تزايد تعقيد محتوى المواقع الإلكترونية، أصبح إدراج جميع المعلومات في “مقالات” أو “صفحات” أمرًا يطرح العديد من المشاكل.

خادم ووردبريس من شركة UltaHost
ضمان استرداد المال خلال 30 يومًا، عرض نطاق ترددي وقواعد بيانات غير محدودين، حماية مجانية ضد هجمات DDoS، خصم 50% عند الشراء لمدة 3 سنوات (السعة المتاحة: 501–4 تيرابايت).

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

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

ثم هناك مرونة العرض الأمامي. يمكنك إنشاء ملفات قوالب منفصلة لـ CPTs مختلفة (مثل single-{cpt-slug}.php و archive-{cpt-slug}.phpيمكنك التحكم بالكامل في طريقة عرضها على الجهة الأمامية، وتحقيق تصميم مختلف تمامًا عن باقي أجزاء الموقع، دون الحاجة إلى تعديل قالب واحد من خلال عمليات تقييم معقدة.

أخيرًا، الأداء وتحسين الاستعلامات. عند تنفيذ استعلامات قاعدة البيانات، يكون استعلام CPT معين (مثل استعلام “الأنشطة” المعلقة جميعها) أكثر كفاءة بكثير من التصفية في جدول كبير يحتوي على جميع أنواع المحتوى. يساعد ذلك في تحسين سرعة تحميل الموقع والأداء العام. إنها ممارسة مثالية لتحسين احترافية وأداء مواقع WordPress على مستوى البنية الأساسية.

القراءة الموصى بها الدليل النهائي لإنشاء موقع إلكتروني: العملية الكاملة والخطوات الرئيسية لإنشاء موقع إلكتروني احترافي من الصفر إلى واحد

كيفية إنشاء نوع مقالات مخصص

هناك طريقتان رئيسيتان لإنشاء CPT: تسجيل من خلال كتابة الشفرة واستخدام المكوّنات الإضافيّة المخصّصة.

تسجيل باستخدام الرمز (الطريقة المفضلة)

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

فيما يلي كود مثالي كامل لإنشاء CPT يُسمى “Portfolio”:

استضافة.كوم استضافة مشتركة
أداء عالٍ مع وحدات المعالجة المركزية AMD EPYC، ووحدات تخزين NVMe SSD وLiteSpeed، ودعم داخلي متخصص على مدار الساعة طوال أيام الأسبوع، وتدابير أمنية متقدمة بما في ذلك SSL، وقوة الغاشمة، والحماية من البرامج الضارة والحماية من DDoS، وتوفير ما يصل إلى 731 تيرابايت 4 تيرابايت
function create_portfolio_post_type() {
    $labels = array(
        'name'               => '作品集',
        'singular_name'      => '作品',
        'menu_name'          => '作品集',
        'add_new'            => '添加新作品',
        'add_new_item'       => '添加新作品',
        'edit_item'          => '编辑作品',
        'new_item'           => '新作品',
        'view_item'          => '查看作品',
        'search_items'       => '搜索作品',
        'not_found'          => '未找到作品',
        'not_found_in_trash' => '回收站中未找到作品'
    );

$args = array(
        'labels'             => $labels,
        'public'             => true,
        'publicly_queryable' => true,
        'show_ui'            => true,
        'show_in_menu'       => true,
        'query_var'          => true,
        'rewrite'            => array( 'slug' => 'portfolio' ),
        'capability_type'    => 'post',
        'has_archive'        => true,
        'hierarchical'       => false,
        'menu_position'      => 5,
        'menu_icon'          => 'dashicons-format-gallery',
        'supports'           => array( 'title', 'editor', 'thumbnail', 'excerpt' )
    );

register_post_type( 'portfolio', $args );
}
add_action( 'init', 'create_portfolio_post_type' );

هذا الكود يعمل من خلال… $labels يحدد المصفوفة النص الذي يتم عرضه في الواجهة الخلفية، من خلال $args يحدد المصفوفة خصائص سلوك CPT، مثل ما إذا كان الوصول إليه متاحًا بشكل عام، وقواعد إعادة كتابة عنوان URL.slug تعيين... portfolioوالميزات المدعومة (العناوين، والمحرر، والصور المميزة، وما إلى ذلك) وأيقونات القائمة الخلفية. وأخيرًا، استخدم add_action() الـ hooks، تقوم بتنفيذ دالة التسجيل عند تشغيل WordPress.

إنشاء باستخدام الإضافات.

بالنسبة للمستخدمين غير الملمين بالبرمجة، يمكن استخدام المكونات الإضافية لإنشاء وإدارة أنواع المنشورات المخصصة (CPTs) بسرعة. توفر المكونات الإضافية الشائعة مثل Custom Post Type UI و Toolset Types واجهة مستخدم سهلة الاستخدام، مما يسمح بتكوين جميع معلمات CPTs بنقرة واحدة، بما في ذلك العلامات والمعلمات وحتى التصنيفات المخصصة.

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

القراءة الموصى بها دليل للمبتدئين في بناء المواقع الإلكترونية: عملية كاملة لإنشاء موقع إلكتروني محترف من الصفر إلى واحد.

إنشاء قالب لأنواع المقالات المخصصة.

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

لتحكم بشكل كامل في “مجموعة أعمالك” في CPT، يجب عليك إنشاء ملفين نموذجيين على الأقل:

الاستضافة المشتركة InterServer
استضافة مشتركة $2.50 دولار أمريكي في الشهر، الشهر الأول $0.1 دولار أمريكي الرمز الترويجي tryinterserver، 461 نص برمجي للتطبيقات السحابية، تثبيت بنقرة واحدة.

1. قالب صفحة الأرشيف: يستخدم لعرض قائمة بجميع الأعمال. قم بتسمية هذا الملف على النحو التالي: archive-portfolio.php وضعه في مجلد الموضوع الخاص بك. يستخدم ووردبريس هذا المجلد عند الوصول إلى الموقع. yoursite.com/portfolio/ عندما يحدث ذلك، سيتم استخدام هذا القالب كأولوية. يمكنك استخدامه فيه. WP_Query أو يمكنك استخدام الحلقة الرئيسية للحصول على جميع المقالات من نوع “محفظة الأعمال” وإخراجها.

2. قالب مقالة واحدة: يُستخدم لعرض تفاصيل عمل واحد. قم بتسمية هذا الملف على النحو التالي: single-portfolio.phpعندما تقوم بزيارة yoursite.com/portfolio/your-work/ عند ذلك، سيقوم ووردبريس باستدعاء هذا القالب. يمكنك تصميم تخطيطه الداخلي بحرية واستدعاء الحقول المخصصة المحددة لـ CPT هذا.

فيما يلي: archive-portfolio.php مثال على البنية التحتية:

<section class="portfolio-archive">
    <h1>أعمالنا.</h1>
    <div class="portfolio-items">
        
            <article class="portfolio-item">
                <a href="/ar/</?php the_permalink(); ?>">
                    
                        
                    
                    <h2></h2>
                </a>
                <p></p>
            </article>
        
    </div>
    
</section>

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

الميزات المتقدمة وأفضل الممارسات

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

تصنيف مخصص مرتبط.

تمامًا مثل “المقالات” التي تحتوي على “فهرس تصنيفي” و“علامات تصنيفيّة”، يمكن أن يحتوي CPT الخاص بك أيضًا على نظام تصنيفي خاص به. على سبيل المثال، يمكنك إنشاء تصنيف “نوع المشروع” لـ “محفظة الأعمال” (باستخدام <). register_taxonomy() يمكنك استخدام وظيفة “التصنيفات” لتقسيم أعمالك إلى فئات مثل “تصميم الويب” و“تصميم العلامات التجارية” و"واجهة المستخدم/تجربة المستخدم"، مما يسهل الفرز على الجهة الأمامية وإدارتها على الجهة الخلفية.

استخدم الحقول المخصصة المتقدمة.

لا يستطيع إطار تحرير المقالات الأصليّ في ووردبريس تلبية متطلّبات إدخال البيانات المعقّدة. يمكنك دمج إضافات مثل Advanced Custom Fields (ACF) أو Meta Box لإنشاء مجموعات حقول سهلة الاستخدام لـ CPT الخاص بك، مثل معرض الصور، والمحدّدات، والمقالات المرتبطة، ومحدّد التواريخ، إلخ. سيؤدي ذلك إلى تحويل CPT الخاص بك من مجرد حاوية مقالات بسيطة إلى نظام قوي لإدخال البيانات.

إعادة كتابة القواعد والروابط الثابتة.

ما تم إعداده أثناء التسجيل في CPT. rewrite تؤثر المعلمات على بنية عنوان URL الخاصة بها. يرجى التأكد من أنه بعد إنشاء CPT، توجه إلى صفحة “الإعدادات” -> “الروابط الثابتة” في لوحة تحكم WordPress على الفور، واضغط ببساطة على زر “حفظ التغييرات” مرة واحدة لتحديث قواعد إعادة الكتابة وضمان أن بنية عنوان URL الجديدة سارية المفعول.

اعتبارات الأداء.

تجنب تسجيل دعم وظائف غير ضرورية لـ CPT (مثل التعليقات والاقتباسات). استخدمها بشكل معقول. WP_Query أنا أحبك، أيها الأخ الأكبر. posts_per_page وآلية ذاكرة التخزين المؤقت، خاصةً عند البحث عن عدد كبير من عناصر CPT في صفحة القائمة. بالنسبة للاستعلامات المرتبطة المعقدة للغاية، فكر في استخدام واجهة برمجة التطبيقات Transients للتخزين المؤقت.

إنفصال شفرة الوظيفة.

بالنسبة لبيئة الإنتاج، يُنصح بشدة بأن تنقل شفرة إنشاء CPT من الموضوع. functions.php يتم نقل هذه الوظائف من ووردبريس إلى “مكون إضافي للوظائف المخصصة” مستقل. والفائدة من ذلك هي أنه حتى إذا قمت بتغيير المظهر في المستقبل، فإن تعريفات CPT هذه ستبقى موجودة ولن تفقد البيانات، مما يحقق الفصل بين الوظائف والعرض التقديمي.

الملخصات

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

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

الأسئلة الشائعة الأسئلة المتداولة

هل ستؤثر أنواع المقالات المخصصة على سرعة الموقع؟

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

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

إذا حذفت نوع المقالة المخصصة، هل ستُفقد المقالات الموجودة فيها؟

يعتمد ذلك على طريقة الحذف. إذا قمت فقط بتعليق شفرة تسجيل CPT من الشفرة، أو قمت بتعطيل المكون الإضافي الذي يقوم بإنشاء CPT، فلن ترى قائمة إدارة CPT في الخلفية، لكن بيانات المقالات ستظل موجودة في WordPress. wp_posts في جدول قاعدة البيانات، إنها فقط... post_type لم تعد قيم الحقول (مثل “portfolio”) تُعتبر نوعًا عامًا صالحًا من قبل نواة WordPress.

في هذه الحالة، يمكنك استعادة الوصول عن طريق تعديل الشفرة وإعادة تسجيل CPT ذي الاسم نفسه. وفي الحالات القصوى، يمكنك أيضًا استعادة الوصول يدويًا عن طريق استعلام قاعدة البيانات عن هذه المقالات. post_type قم بتغييره إلى “post” أو “page”. هذا تحذير مهم: يجب عليك بالضرورة عمل نسخة احتياطية من قاعدة البيانات الخاصة بك قبل إجراء أي تغييرات هيكلية كبيرة (مثل الإزالة الدائمة لـ CPT).

كيف يمكن إضافة حقول مخصصة إلى أنواع المقالات المخصصة؟

هناك طريقتان رئيسيتان لإضافة حقول مخصصة إلى CPT. الأولى هي استخدام لوحة “الحقول المخصصة” المضمنة في WordPress، ولكن واجهتها بسيطة وميزاتها محدودة، وهي غير مناسبة للاحتياجات المعقدة. الطريقة الثانية، والتي يُفضل استخدامها، هي استخدام إضافات إدارة الحقول الخارجية، مثل Advanced Custom Fields (ACF) أو Meta Box.

توفر هذه الإضافات واجهة سهلة الاستخدام تسمح لك بإنشاء مجموعات من الحقول (مثل “معلومات المنتج”) وتعيينها إلى CPT محدد (مثل “المنتج”). بعد ذلك، يمكنك رؤية مربعات إدخال الحقول الملائمة هذه في صفحة تحرير CPT. في القوالب الأمامية، استخدم الوظائف التي تقدمها الإضافة (مثل ACF's <). get_field()يمكن الحصول بسهولة على قيم هذه الحقول وعرضها باستخدام هذه الطريقة.

هل يمكن استخدام أنواع المقالات المخصصة مع قوالب الصفحات؟

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

على سبيل المثال، لديك CPT “عضو”، قالبه الافتراضي هو single-member.phpيمكنك إنشاء واحدة باسم page-template-leadership.php اختر قالب الصفحة، ثم في WP_Query ابحث عن “الأعضاء” في CPT الذين يشغلون مناصب محددة، واستخدم تخطيط هذا القالب لعرضهم. في الخلفية، تحتاج إلى إنشاء صفحة جديدة في “الصفحات”، ثم اختيار هذا القالب المخصص لها. هذا يوضح مرونة نظام القوالب في WordPress.