كيفية تنفيذ أنواع المنشورات المخصصة والحقول المخصصة في WordPress

نشرت: 2014-06-10

لم يعد WordPress مقصورًا على التدوين فقط - إنه نظام إدارة محتوى كامل الميزات قادر على عرض وتنسيق أي نوع من المحتوى الذي تقدمه له. لذلك دعونا نتحدث عن طريقتين رائعتين لتوسيع WordPress: أنواع المنشورات المخصصة والحقول المخصصة.

أنواع المنشورات المخصصة

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

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

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

ملاحظة: للقيام بذلك ، ستحتاج إلى أن تكون قادرًا على تحرير ملفات .php في دليل تثبيت WordPress الخاص بك ، والذي يتطلب عادةً الوصول إلى FTP / SFTP / SSH. تأكد من حصولك على هذا قبل المتابعة.

يمكن لكل سمة WordPress استخدام ملف jobs.php الموجود في:
/wp-content/themes/your_current_theme/functions.php
يستخدم هذا الملف بشكل عام لتغييرات الموقع الخاصة بالموضوع بالإضافة إلى تعديلات الموقع المخصصة الأصغر ، مثل ذلك الذي نحن بصدد القيام به.

ملاحظة: سنقوم بإضافة كود إلى ملف functions.php ، مما يعني أنه خاص بموضوع معين. إذا قمت بإضافة هذا إلى ملف function.php الخاص بك ثم قمت بتغيير المظهر في تثبيت WordPress الخاص بك ، فسوف تقوم بإزالة نوع المنشور المخصص من موقع الويب الخاص بك. يمكنك الاحتفاظ بأنواع المحتوى المخصصة من خلال استخدام مكون إضافي ، مثل Custom Post Type UI.

1. افتح ملف jobs.php الخاص بك وأضف الكود التالي في أسفل الملف:

function create_new_post_type() {
$labels = array(
'name' 			 => __('Coffee Reviews'),
'singular_name'  => __('Coffee Review'),
);
$args = array(
'labels'      	 => $labels,
'public' 	  	 => true,
'has_archive' 	 => true,
'menu_position'  => 5,
'description'    => 'Reviews And Types of Coffee',
'rewrite'     	 =>
array('slug' => 'reviews'),
'supports'    	 =>
array( 'title',
'comments', 'editor',
'thumbnail', 'custom-fields', 'revisions'),
);

register_post_type('Reviews', $args);
}
add_action('init', 'create_new_post_type');

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

ملاحظة: ربما لاحظت أن $labels $ و $args قد تم تعريفها خارج وظيفة register_post_type() على الرغم من أنه تم تمريرها كوسيطات لهذه الوظيفة في وقت لاحق. تساعد هذه الطريقة في التنظيم والقراءة ، ولكن يمكنك اختصار كلا المصفوفتين في وسيطة واحدة. سيكون من الصعب فهمه.

تحتوي المصفوفة $args على كل التفاصيل التي نحتاجها لتحديد نوع المحتوى الجديد الخاص بنا. إليك ما يفعله هؤلاء:

  • 'labels' - مصفوفة تحدد ما سنسميه نوع المحتوى الخاص بنا. هناك العديد من الملصقات المتاحة التي يمكنك استخدامها ، وتتوفر قائمة كاملة في الوثائق هنا.
  • 'public' - قيمة منطقية تحدد ما إذا كانت المشاركة قابلة للعرض خارج لوحة المشرف أم لا.
  • 'has_archive' - إذا كان هذا صحيحًا ، فسيقوم هذا المنطقي بإنشاء أرشيف لهذا النوع من المنشورات المخصصة ، تمامًا مثل منشورات WordPress القياسية.
  • 'menu_position' - يتغير هذا العدد الصحيح حيث ينتقل زر التنقل المخصص للمشاركة. يشير الرقم 5 إلى أنه سينتقل مباشرة أسفل علامة تبويب المشاركات. للحصول على قائمة كاملة من الرموز الرقمية ، تحقق من نفس الوثائق.
  • 'description' - يصف نوع المنشور.
  • 'rewrite' - هذا يغير الرابط الثابت ليكون "مراجعات" ، مما سيساعد في إنشاء هيكل رابط ثابت قابل للاستخدام. (يمكن أيضًا أن يكون منطقيًا ؛ راجع الوثائق للحصول على مزيد من المعلومات.)
  • 'supports' - مصفوفة تحدد ميزات التحرير / النشر الأصلية في WordPress التي يتم تمكينها. هذا واحد مرن للغاية ، وهناك الكثير من الخيارات ، لكننا سنحتاج على الأقل custom-fields editor لهذا المنشور.

تُسمى الوظيفة register_post_type() التالية ، والتي تنشئ نوعًا جديدًا للمنشور يسمى المراجعات باستخدام مصفوفة من الوسائط التي حددناها للتو.

أخيرًا ، يتعين علينا استدعاء وظيفة أخيرة لإكمال العملية. يجب دائمًا تهيئة register_post_type() من خلال الإجراء "init". يمكننا ربط وظيفتنا الجديدة بـ init عن طريق الاتصال

add_action(‘init’, ‘create_new_post_type’);

رائع! الآن إذا قمنا بتسجيل الدخول إلى لوحة إدارة WordPress الخاصة بنا ، فسنرى علامة تبويب جديدة على اليسار تسمى "التعليقات".

آراء_مقهى

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

3. ضمن الإعدادات -> شريط قوائم الروابط الثابتة ، ستجد مجموعة من الخيارات الشائعة لهياكل الروابط الثابتة. سنقوم بتغيير الإعداد المخصص لمطابقة الحقل /%category%/%postname%/

هذا يعني أن WordPress سينشئ عناوين URL لمطابقة فئة وعنوان منشوراتنا.

ملاحظة: هذا تغيير على مستوى الموقع وسيؤثر على مشاركاتك في الفئات الأخرى.

custom_permalink

لنلقِ الآن نظرة على عنوان URL لمنشور كتبه المراجعون لقهوة Sumatra Ketiara:

سومطرة_برمالينك

جميل! تحقق من ذلك URL. لقد تم فصل المراجعات في الدليل الخاص بها وعنوان URL مكتوب بلغة إنجليزية بسيطة. الآن يعرف قرائنا بالضبط ما سيحصلون عليه عندما ينقرون على رابط.

الحقول المخصصة

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

1. في محرر مراجعة فردي ، سترى زر خيارات الشاشة في الزاوية اليمنى العليا من المحرر:

خيارات الشاشة

والتي تتوسع إلى هذا عند النقر فوق:

screen_options_dropdown

2. حدد مربع الحقول المخصصة.

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

custom_fields_blank

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

منطقة_حقول_مخصصة

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

4. سنقوم بإضافة علامة الرمز هذه إلى إحدى مستندات السمات الخاصة بنا:

<br /><?php the_meta(); ?><br />

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

بالرجوع إلى مدونتنا ، يمكننا أن نرى أن علامتنا قد أدرجت قائمة في مراجعتنا.

custom_field_example

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