विज्ञापन

WordPress का उपयोग करने के फायदों में से एक इसका सरासर लचीलापन है। यह सिर्फ पोस्ट और पेज के लिए नहीं है: कस्टम पोस्ट प्रकार मुख्य विशेषताओं को वस्तुतः कुछ भी कर सकते हैं।

आइए आज एक नज़र डालते हैं कि आप कस्टम पोस्ट प्रकारों के साथ क्या कर सकते हैं, साथ ही साथ कस्टम पोस्ट प्रकार का उपयोग करके एक ईवेंट लिस्टिंग बनाने का एक त्वरित व्यावहारिक उदाहरण भी। प्रतिस्पर्धा।

ध्यान दें: इस ट्यूटोरियल को केवल शैक्षिक उद्देश्यों के लिए माना जाना चाहिए, ताकि आप कस्टम पोस्ट प्रकार बनाने के लिए उपयोग किए गए कोड को सीख सकें। यदि आप वास्तव में अपने वर्डप्रेस साइट के लिए एक महान घटनाओं की सूची प्लगइन चाहते हैं, तो प्रयास करें घटनाक्रम कैलेंडर, जो अच्छी तरह से विकसित और मुक्त है।

वर्डप्रेस में कस्टम पोस्ट प्रकार क्या हैं?

आमतौर पर, एक वर्डप्रेस साइट में दो प्रकार की सामग्री होती है: दिनांकित ब्लॉग पोस्ट और स्थिर पृष्ठ। हममें से ज्यादातर जिनके पास है वर्डप्रेस ब्लॉग सेट करें वर्डप्रेस के साथ अपने ब्लॉग को सेट करें: अंतिम गाइडअपना खुद का ब्लॉग शुरू करना चाहते हैं लेकिन पता नहीं कैसे? वर्डप्रेस पर देखें, आज उपलब्ध सबसे शक्तिशाली ब्लॉगिंग प्लेटफ़ॉर्म। अधिक पढ़ें

instagram viewer
इस तथ्य से परिचित हैं कि पृष्ठों का उपयोग "मेरे बारे में" या "संपर्क जानकारी" जैसी चीजों के लिए किया जाना चाहिए, जबकि नियमित पोस्ट आपके ब्लॉग पर जाती हैं।

लेकिन इससे परे, यदि आप एक और विशेष प्रकार की सामग्री जोड़ना चाहते हैं जो वास्तव में ब्लॉग के कालानुक्रमिक क्रम में फिट नहीं है और निश्चित रूप से यह स्थिर नहीं है? जहां कस्टम पोस्ट प्रकार आते हैं

क्लब या समूह साइटों के लिए एक काफी सामान्य अनुरोध किसी प्रकार के ईवेंट कैलेंडर का होना है। एक समाधान जो लागू किया जा सकता है वह है पोस्ट की एक अलग ईवेंट श्रेणी बनाना। इसके साथ समस्या यह है कि वे मुख्य ब्लॉग समयरेखा में प्रदर्शित नहीं होंगे, और हमें वास्तव में दो अवधारणाओं को पूरी तरह से अलग करना चाहिए।

उस उद्देश्य के लिए, एक नई पोस्ट प्रकार नामक घटना बनाएँ, जिसमें व्यवस्थापक इंटरफ़ेस का अपना अलग अनुभाग होगा।

वर्डप्रेस में कस्टम पोस्ट टाइप कैसे बनाएं

हम सीधे आपकी थीम फ़ाइलों को समायोजित करके ऐसा करेंगे। आप एक प्लगइन के माध्यम से एक ही प्रभाव प्राप्त कर सकते हैं, लेकिन अवधारणा को प्रदर्शित करने के लिए और उन्हें सीधे लिखना आसान है। यदि आप ऐसा करने में सहज नहीं हैं, तो उपयोग करने पर विचार करें मेरा कस्टम कार्य प्लगइन, जो आपको गैर-विनाशकारी रूप से कोड जोड़ने की अनुमति देता है।

मेरे कस्टम कार्य

अपनी थीम खोलें functions.php फ़ाइल, अंदर थीम फ़ोल्डर में संग्रहीत WP-सामग्री / विषयों; या मेरा कस्टम फ़ंक्शंस प्लगइन का उपयोग करें, जो आपको मिलेगा समायोजन > PHP आवेषण. फ़ाइल के अंत में, यह कोड जोड़ें:

add_action ('init', 'event_init'); function event_init () {$ args = array ('लेबल' => array ('नाम' => __ ('इवेंट्स'), 'singular_name' => __ ('इवेंट'),), 'public' => सच, 'has_archive' => true, 'rewrite' => array ("slug" => "इवेंट"), 'support' => सरणी ('थंबनेल', 'संपादक', 'शीर्षक', 'कस्टम-फ़ील्ड')); register_post_type ('इवेंट', $ args); }

समापन php से पहले यह करना सुनिश्चित करें (?>) टैग, अगर आपके यहाँ एक है functions.php फ़ाइल।

कोड पर पढ़ने के लिए कुछ समय लें। यह कुछ गुणों की घोषणा कर रहा है (जैसे कि इंटरफ़ेस के लिए लेबल), और URL (पुनर्लेखनों) को कैसे संभाला जाना चाहिए, साथ ही साथ यह पोस्ट-प्रकार का समर्थन करता है। उदाहरण के लिए, आप अपने कस्टम पोस्ट प्रकार को समर्थन गुण के साथ एक कस्टम फ़ील्ड जोड़ सकते हैं।

इस मामले में, हमने अपने ईवेंट प्रकार को थंबनेल का समर्थन करने के लिए, ईवेंट वर्णन के लिए एक सामग्री संपादक, एक ईवेंट शीर्षक और कस्टम फ़ील्ड घोषित किया है। हमने भी जोड़ा है has_archive, ताकि ईवेंट पृष्ठ पर नेविगेट करने से ब्लॉग के समान सभी घटनाओं का एक संग्रह सामने आ जाए।

यह अब है, यदि आप अपने विषय को सहेजते हैं और अपने ब्लॉग को फिर से लोड करते हैं, तो यह मानते हुए कि आपके पास कोई त्रुटि नहीं है, जिसे आपको अब अपने व्यवस्थापक साइडबार पर एक नया ईवेंट अनुभाग देखना चाहिए। वाह!

ध्यान दें कि व्यवस्थापक में अतिरिक्त सुविधाओं के सभी तरीकों के लिए मेरी वर्तमान थीम कस्टम पोस्ट प्रकारों का पूरा लाभ कैसे ले रही है।

अब कुछ उदाहरण घटनाओं को जोड़ें।

इवेंट सूची में दो भयानक पार्टियों को जोड़ा गया है!

फिर चूंकि यह एक घटना है, इसलिए एक कस्टम फ़ील्ड बनाएं दिनांक इंगित करने के लिए कि घटना कब होगी। उपयोग dd / mm / yyyy प्रारूप।

यह दिखाने के लिए कि वास्तव में घटना कब होगी, एक कस्टम दिनांक फ़ील्ड बनाना

ध्यान दें कि हमें पोस्ट की तारीख के बजाय घटना की वास्तविक तारीख को निर्दिष्ट करने के लिए कस्टम फ़ील्ड का उपयोग करने की आवश्यकता है, क्योंकि नोटिस प्रकाशित होने पर पोस्ट की तारीख का प्रतिनिधित्व करता है। चूंकि आप संभवतः भविष्य में होने वाली घटनाओं को जोड़ रहे हैं, इसलिए प्रकाशन की तारीख को वास्तविक घटना तिथि पर सेट करना बेकार होगा।

यदि आप इस बिंदु पर घटना को देखने की कोशिश करते हैं, तो आपको 404 त्रुटि मिल सकती है। ऐसा इसलिए है क्योंकि वर्डप्रेस को इस नए पोस्ट प्रकार के लिए अपने Permalink URL संरचना को फिर से बनाने की आवश्यकता है। को सिर सेटिंग्स> पर्मलिंक पेज, और हिट फिर से सहेजें।

अब आपको व्यक्तिगत ईवेंट पोस्ट देखने में सक्षम होना चाहिए। ध्यान दें कि URL का पहला भाग, आपके डोमेन नाम के बाद है /events/. हमने इसे कोड ऑफ़ लाइन में चुना है:

'फिर से लिखना' => सरणी ("स्लग" => "ईवेंट"),

घटनाक्रम लिस्टिंग पृष्ठ को अनुकूलित करें

अब जब आपके पास आपके ब्लॉग की ये सभी शानदार घटनाएं हैं, तो उन्हें वास्तव में कहीं न कहीं सूचीबद्ध करना अच्छा होगा। उसके लिए, हम एक विशेष पेज टेम्प्लेट बनाएंगे, ताकि आप उस पेज को अपने नियमित मेनू आइटमों के बारे में या संपर्क के साथ जोड़ सकें।

चूंकि हमने पहले ही निर्दिष्ट कर दिया है कि इवेंट पोस्ट प्रकार के पास एक संग्रह होना चाहिए, आप आगे जा सकते हैं और देख सकते हैं कि डिफ़ॉल्ट क्या है /events/. मेरे परीक्षण स्थल पर मानक बीस-सत्रह विषय पर, मुझे यह मिला:

घटनाओं को दिखाने वाला पुरालेख पृष्ठ

इस आउटपुट को अनुकूलित करना इस बात पर निर्भर करने वाला है कि आप किस विषय का उपयोग कर रहे हैं, और पूरे वर्डप्रेस टेम्प्लेटिंग सिस्टम को कवर करना इस लेख के दायरे से बाहर है। हालाँकि, इस ट्यूटोरियल की खातिर, मैं आपको ट्वेंटी-सेवेंटीन का उपयोग कर रहा हूँ।

की प्रति बनाकर प्रारंभ करें archive.php, और इसका नाम बदल दिया संग्रह-events.php. यह है एक मानक नामकरण सम्मेलन इसका मतलब है कि वर्डप्रेस इस टेम्पलेट का उपयोग इवेंट पोस्ट प्रकार के संग्रह को प्रदर्शित करने के लिए स्वचालित रूप से करेगा।

फ़ाइल की जांच करने पर, बीस-सत्रह लेखकों ने एक पोस्ट प्रारूप तंत्र प्रदान किया है, जो हमारी आवश्यकताओं के लिए बहुत जटिल है:

/* * सामग्री के लिए पोस्ट-प्रारूप-विशिष्ट टेम्पलेट शामिल करें। * अगर आप चाइल्ड थीम में इसे ओवरराइड करना चाहते हैं, तो एक फाइल शामिल करें। * कंटेंट -___ कहा जाता है। php (जहां ___ पोस्ट फॉर्मेट का नाम है) और इसका उपयोग इसके बजाय किया जाएगा। */ get_template_part ('टेम्पलेट-पार्ट्स / पोस्ट / सामग्री', get_post_format ());

ध्यान दें: मूल विषय के किसी भी अद्यतन के बाद से आपके परिवर्तनों को अधिलेखित करने के बाद से एक बाल विषय की सिफारिश की जाती है। यह वर्डप्रेस सपोर्ट आर्टिकल ट्वेंटी-सेवेंटीन के लिए एक बाल विषय बनाने की प्रक्रिया का वर्णन करता है। संक्षिप्तता के लिए, मैं सिर्फ मूल विषय पर काम करने जा रहा हूं और यह ध्यान नहीं रखता कि बाद में अपडेट में मेरा काम खो जाए।

उस पूरे ब्लॉक को काटें, और इसके बजाय निम्नलिखित में पेस्ट करें। यह सीखने की खातिर, उन पोस्ट फॉर्मेट टेम्प्लेट्स में क्या है, इसकी एक सरल प्रतिलिपि है:

php इको '

जेम्स के पास आर्टिफिशियल इंटेलिजेंस में बीएससी है, और कॉम्पिटिया ए + और नेटवर्क + प्रमाणित है। वह MakeUseOf के प्रमुख डेवलपर हैं, और अपना खाली समय वीआर पेंटबॉल और बोर्डगेम खेलने में बिताते हैं। वह पीसी का निर्माण कर रहा है क्योंकि वह एक बच्चा था।