كيفية إنشاء حقل مخصص في WordPress برمجيًا
نشرت: 2022-01-20هل تريد إنشاء حقل مخصص في WordPress برمجيًا ؟ إذا كانت الإجابة بنعم ، فلدينا الدليل المثالي لك مع عدد قليل من الخيارات الإضافية.
هناك العديد من الأسباب التي تجعل WordPress أكثر أنظمة إدارة المحتوى شيوعًا حول العالم. لكن أحد أكثر الأمور أهمية هو أن تكون قابلاً للتخصيص بدرجة كبيرة. يمكنك تخصيص العديد من عناصر موقع WordPress على الويب ، والتي من بينها الحقول المخصصة أيضًا. يحتوي WordPress على العديد من الميزات الإضافية القابلة للتخصيص لهم حتى أنه يمكنك إضافة الحقول المخصصة برمجيًا على موقع الويب الخاص بك.
ما هي الحقول المخصصة؟
يتم إرفاق حقل مخصص بمنشور أو صفحة ، ويقوم بتخزين معلومات إضافية لاستخدامها في موقع ويب. يمكن أن تكون مرتبطة أيضًا بأي نوع من المنشورات. لذلك ، يمكنه جمع المعلومات المتعلقة بالمنتجات أو التعليقات أو حتى أنواع المنشورات المخصصة أيضًا.
يتم تخزينها في قاعدة بيانات موقع WordPress الخاص بك أسفل جدول wp_postmeta . يحتوي على المعلمات meta_id و post_id و meta_key و meta_value.
علاوة على ذلك ، يمكنك أيضًا تخزين أي نوع من البيانات في الحقل المخصص. يمكن استخدامها حتى من قبل مستخدمي الواجهة الأمامية والخلفية ، أو بواسطة بعض نصوص PHP الأخرى أيضًا.
لماذا إنشاء حقل مخصص في ووردبريس؟
يمكن استخدام الحقول المخصصة لتحقيق مجموعة واسعة من المتطلبات. كلما احتجت إلى إضافة بعض المعلومات الإضافية المتعلقة بمنشور ما ، يمكن أن يكون الحقل المخصص مفيدًا جدًا.
ومع ذلك ، يستخدم المطورون الحقول المخصصة في الغالب لإضافة ميزات جديدة إلى مواقع الويب الخاصة بهم. أحد أكثر تطبيقاتها فائدة هو استخدامها على الواجهة الأمامية بحيث يمكن للمستخدمين ملء نموذج .
ولكن إليك بعض الأمثلة الأخرى حيث يمكن استخدام حقل مخصص:
- قم بإرفاق "حالة مزاجية" بالمشاركات ، حيث تريد الكشف عن شعورك عندما كنت تكتبها.
- دع المستخدمين يعرفون ما إذا تم اقتراح منشور لبعض الفئات العمرية المحددة.
- تخزين الوقت اللازم لقراءة المنشور.
- أعط درجة لمنتج أو منشور.
- بيانات مرجعية ستطلق بعض البرامج النصية عند وجودها.
بصرف النظر عن هذا ، تستخدم السمات والمكونات الإضافية بشكل عام حقولًا مخصصة لتعيين ميزات خاصة لمنشورات أو صفحات معينة. وبالمثل ، من الممارسات الشائعة أيضًا استخدام الحقول المخصصة على واجهات المستخدم ، سواء في الواجهة الأمامية أو الخلفية.
الآن بعد أن أصبحت على دراية بأهمية الحقول المخصصة في WordPress ، دعنا نرى كيف يمكننا إضافتها.
كيف تضيف حقول مخصصة في ووردبريس؟
بشكل افتراضي ، يمكنك إضافة حقل مخصص إلى أي منشور أثناء تحريره في المحرر. كل ما عليك فعله هو تمكينه في علامة التبويب خيارات الصفحة ، ثم قم بالتمرير لأسفل للعثور على مربع تعريف الحقل المخصص.
ما عليك سوى النقر فوق "إضافة حقل مخصص" وإدخال الاسم والقيمة لإنشاء حقل مخصص يدويًا.
ولكن إذا كنت هنا ، فأنت بالتأكيد تبحث عن طريقة لإنشاء حقل مخصص لـ WordPress برمجيًا . لذا ، دعنا نمضي قدمًا ونغوص فيه.
كيفية إنشاء حقل مخصص في WordPress برمجيًا؟
يمكنك بسهولة إنشاء حقل مخصص في WordPress برمجيًا إذا كان لديك معرفة فنية أساسية في البرمجة.
ولكن قبل أن نبدأ ، تأكد من عمل نسخة احتياطية من موقع الويب الخاص بك وإنشاء سمة فرعية برمجيًا أو استخدام أحد المكونات الإضافية للقوالب الفرعية. سنقوم بتعديل الملفات الحساسة لموقعك على الويب وقد يتم مسح هذه التغييرات أيضًا عند تحديث قالب WordPress الخاص بك. ومع ذلك ، إذا كنت تستخدم سمة فرعية ، فلن تتأثر التخصيصات في هذه الملفات حتى بعد تحديث قالب WordPress الخاص بك.
إذا لم تكن مرتاحًا لتغيير ملفات السمات مباشرة بنفسك ، فيمكنك استخدام المكونات الإضافية مثل Code Snippets أيضًا. ومع ذلك ، سنستخدم السمة الفرعية في هذا البرنامج التعليمي لأنها أسهل بالنسبة لنا.
1. الوصول إلى ملف سمات Functions.php
بعد إنشاء سمة فرعية ، يمكنك البدء في إضافة مقتطفات التعليمات البرمجية في ملف سمة function.php الخاص بك لإنشاء الحقول المخصصة. ما عليك سوى الانتقال إلى المظهر> محرر السمات وافتح ملف function.php من لوحة معلومات WordPress الخاصة بك. بعد ذلك ، أضف مقتطفات التعليمات البرمجية في الجزء السفلي من هذا المحرر وقم بتحديث الملف .
لقد استخدمنا موضوع Divi لهذا البرنامج التعليمي. لكن قد يبدو محرر السمات مختلفًا على موقع الويب الخاص بك اعتمادًا على الموضوع الذي تستخدمه.
2. إضافة قصاصات التعليمات البرمجية إلى محرر السمات
add_post_meta()
هي التي سنستخدمها. يتطلب الأمر ثلاث معلمات: معرف المنشور أو الصفحة ، واسم الحقل المخصص وقيمته. يمكن استخدام معلمة اختيارية رابعة للتحقق مما إذا كان الحقل المخصص موجودًا بالفعل.
لذا ، فإن إضافة حقل مخصص أمر بسيط مثل إضافة السطر التالي إلى ملف function.php
للقالب الفرعي.
add_post_meta (460، "custom_field_name"، "value"، true) ؛
سيؤدي هذا إلى إضافة حقل مخصص إلى المنشور بالمعرف 460.
لقد أطلقنا على الحقل المخصص اسم "custom_field_name" لهذا العرض التوضيحي. ولكن ، يمكنك أيضًا تعيين سلسلة كقيمة (قيمة) وتعيين المعلمة الاختيارية على صواب من أجل إنشائها فقط إذا لم تكن موجودة بالفعل.
بالطبع ، هذه هي أبسط حالة في البرنامج النصي لإضافة حقل مخصص إلى منشور معين. إنه غير فعال على الإطلاق لأنه سيعمل على كل صفحة يتم تحميلها في وقت واحد للتحقق مما إذا كان الحقل المخصص موجودًا بلا فائدة.
لحسن الحظ ، يمكننا تحسينه أكثر من ذلك بكثير ، لتحقيق حل مقبول. سيكون الخطاف publish_post()
مفيدًا جدًا في هذه الحالة لأنه لا يتم تشغيله إلا عند نشر منشور .
add_action ('publish_post'، 'add_custom_field_automatically') ؛ الوظيفة add_custom_field_automatically ($ post_ID) { إذا (! wp_is_post_revision ($ post_ID)) { add_post_meta ($ post_ID، 'meta_field'، '55'، صحيح) ؛ } }
نظرًا لأننا نستخدم المتغير $post_ID
، فسيتم تطبيق هذا على جميع المنشورات المنشورة حديثًا .
قم بتحديث حقل مخصص في WordPress
عند إنشاء حقل مخصص في WordPress برمجيًا ، يمكنك أيضًا تحديثه إذا كنت تريد مقتطف رمز مشابه.
لتحديث حقل مخصص ، يمكن استخدام وظيفة update_post_meta()
. سنستخدم أيضًا نفس الخطاف المستخدم في النص السابق لأنه يعمل عند تحديث منشور أيضًا. ما عليك سوى إضافة مقتطف الشفرة التالي إلى ملف jobs.php لموقع الويب الخاص بك.
add_action ('publish_post'، 'update_custom_field_automatically') ؛ وظيفة update_custom_field_automatically ($ post_ID) { إذا (! wp_is_post_revision ($ post_ID)) { update_post_meta ($ post_ID، 'meta_field'، 20) ؛ } }
سيؤدي هذا إلى تغيير قيمة الحقل المخصص الذي تم إنشاؤه مسبقًا من 55 إلى 20.
تعمل update_post_meta()
أيضًا add_post_meta()
. يمكنه إنشاء حقل مخصص جديد إذا لم يكن موجودًا أيضًا.
إزالة الحقول المخصصة في WordPress
لا يقتصر استخدام مقتطفات التعليمات البرمجية على إنشاء الحقول المخصصة وتحديثها في WordPress فقط. بعد إنشاء حقل مخصص في WordPress برمجيًا ، قد تكون هناك بعض المواقف التي قد ترغب في إزالتها أيضًا.
الوظيفة التي ستسمح لنا بإزالة جميع الحقول المخصصة مع اسم معين (مفتاح) هي delete_post_meta_by_key(”meta_field”);
يأخذ فقط اسم الحقل المخصص كمعامل فريد خاص به.
كما تحدثنا بالفعل ، فإن الطريقة الصحيحة للقيام بذلك هي استخدام الخطاف. هذه المرة ، سنستخدم الخطاف init()
الذي يستخدم غالبًا لتهيئة المكونات الإضافية والسمات. مرة أخرى ، أضف المقتطفات التالية إلى ملف jobs.php.
add_action ('init'، 'remove_custom_field_automatically') ؛ الوظيفة remove_custom_field_automatically () { delete_post_meta_by_key ('meta_field') ؛ }
لإزالة الحقول المخصصة في منشورات محددة ، يمكنك استخدام وظيفة delete_post_meta()
. يمكن استخدامه أيضًا إذا تم تعيين قيمة محددة للحقل المخصص.
يعمل هذا بطريقة مماثلة مقارنة بالمقتطف السابق. ولكنه يوفر مزيدًا من المرونة لاستهداف إزالة حقول مخصصة معينة .
add_action ('publish_post'، 'delete_custom_field_automatically') ؛ الوظيفة delete_custom_field_automatically ($ post_ID) { إذا (! wp_is_post_revision ($ post_ID)) { delete_post_meta ($ post_ID، 'meta_field') ؛ } }
سيؤدي هذا النص البرمجي إلى إزالة الحقل المخصص المسمى "custom_field" للمنشور الحالي ، والذي يتم توفيره بواسطة المتغير $post_ID
.
يمكنك أيضًا إزالة حقل مخصص فقط إذا تم إرفاق قيمة معينة به. ما عليك سوى إضافته كمعامل ثالث.
delete_post_meta($post_ID, 'meta_field','20');
هذا هو! يمكنك الآن إنشاء أو تحديث أو حذف حقل مخصص في WordPress برمجيًا. ما عليك سوى تعديل هذه المقتطفات وفقًا لموقع الويب الخاص بك وقد تتمكن من تعديلها أكثر.
استنتاج
هذا هو برنامجنا التعليمي لإنشاء حقل مخصص في WordPress برمجيًا . يمكن أن تكون مفيدة للغاية إذا كنت ترغب في تزويد المستخدمين بمعلومات إضافية على موقع الويب الخاص بك.
للتلخيص ، لقد أظهرنا لك مقتطفات التعليمات البرمجية لإنشاء حقول مخصصة في WordPress. وبالمثل ، قدمنا لك أيضًا بعض المقتطفات الأخرى لتحديث الحقول المخصصة وإزالتها. يمكن أن تكون مفيدة في ظروف معينة اعتمادًا على حاجة موقع الويب الخاص بك.
الحقول المخصصة هي واحدة من أفضل ميزات WordPress وتستخدم على نطاق واسع في WooCommerce أيضًا. لدينا أيضًا أدلة لإضافة حقول مخصصة في تسجيل الخروج من WooCommerce وإعادة ترتيب حقول تسجيل الخروج من WooCommerce. إذا كنت تريد معرفة المزيد حول التخصيصات الأخرى في WordPress و WooCommerce ، فلا تتردد في تصفح المنشورات التالية:
- كيفية إنشاء نوع منشور مخصص لـ WordPress
- تخصيص صفحة تسجيل الدخول إلى WordPress
- كيفية تخصيص منتجات WooCommerce ذات الصلة
هل يمكنك إنشاء الحقول المخصصة في WordPress برمجيًا الآن؟ هل قمت بإنشائها من قبل؟ لا تخبرنا في التعليقات.