कस्टम पोस्ट प्रकार और वर्गीकरण का नामकरण


31

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

एक कस्टम पोस्ट प्रकार का नाम बदलने का सबसे अच्छा तरीका क्या होगा? एक वर्गीकरण का नाम बदलने के बारे में कैसे?


एक ही नस में एक अनुवर्ती प्रश्न कस्टम .htaccess rewrite नियमों के बारे में है। क्या मेरे डेटाबेस को बंद करने के लिए बहुत सारे बचे हुए नियम होंगे? मैंने अभी तक साइट लॉन्च नहीं की है, इसलिए मुझे पुनर्निर्देशित होने के लिए किसी भी पुराने लिंक की आवश्यकता नहीं है।
डेरेक पर्किन्स

जवाबों:


47

पदों के नाम बदलने के लिए SQL क्वेरी:

UPDATE  `wp_posts` SET  `post_type` =  '<new post type name>' WHERE  `post_type` = '<old post type name>';

कर नाम बदलने के लिए SQL क्वेरी:

UPDATE  `wp_term_taxonomy` SET  `taxonomy` =  '<new taxonomy name>' WHERE  `taxonomy` = '<old taxonomy name>';

डेटाबेस के सभी क्षेत्रों का ध्यान रखना चाहिए। बस उस कोड में नए नामों का मिलान करना याद रखें जहां पोस्ट प्रकार या टैक्सोनॉमी पंजीकृत हैं। जहां तक ​​मुझे पता है, यह अभी तक किसी भी प्लगइन्स में संभाला नहीं गया है।


9
उत्कृष्ट उत्तर, वास्तव में मुझे क्या चाहिए। यहाँ पर एक टिप दी गई है, जैसा कि मैंने किया था, अन्य लोगों ने भी यही समस्या बताई: जब मैंने क्वेरी चलाई और अपना कोड अपडेट किया, तो चीजें मूल रूप से काम कर रही थीं, लेकिन जब मैंने एक व्यक्तिगत सामग्री आइटम के लिए पृष्ठ पर जाने की कोशिश की तो मुझे 404 त्रुटि मिली। मुझे लगता है कि कुछ पारलिंक कैश को रीसेट करने की आवश्यकता है; मैं टूल> पेर्मलिंक पर गया और सेव पर क्लिक किया, फिर विस्तृत पृष्ठों ने काम करना शुरू कर दिया।
एंडी गेसलर

जब मैंने ऐसा किया, तो मैंने गाइड फील्ड को भी अपडेट किया। यह @AndyGiesler के रूप में पर्मलिंक को फिर से बनाने के लिए अनावश्यक बनाने में मदद कर सकता है। बस अपने अद्यतन विवरण में निम्नलिखित शामिल करें: गाइड = उत्तर (गाइड, '<पुरानी पोस्ट प्रकार नाम>', '<नया पोस्ट प्रकार नाम>')
rinogo

बस rinogo की टिप्पणी में थोड़ी और जानकारी जोड़ने के लिए, यह गाइड को अपडेट करने के लिए थोड़ा सुरक्षित तरीका है: UPDATE wp_posts SET गाइड = रिपोर्ट (गाइड, 'पोस्ट_टाइप = <पुराना पोस्ट टाइप नाम', 'पोस्ट_टाइप = <नया पोस्ट टाइप नाम] > ');
डेविड

बस ध्यान देने के लिए आपको
मल्टीसिट

6

हाय @ डेरेक पर्किन्स:

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

क्या आप हमें बता सकते हैं कि आप किस प्लगइन्स का उपयोग कर रहे हैं?


ये एक अच्छा बिंदु है। मैं अपनी थीम कस्टम बना रहा हूं, इसलिए मुझे अपना कोड बदलना होगा और अपना कोड बदलना होगा। हालाँकि, मेरे पास कोई प्लगइन्स नहीं है जो कस्टम पोस्ट प्रकार की जानकारी संग्रहीत कर रहे हैं।
डेरेक पर्किन्स

यह लाभप्रद है। मैं उन्नत कस्टम फ़ील्ड का उपयोग कर रहा था, और उस पोस्ट से जुड़े प्रत्येक फ़ील्ड समूह के लिए आपको इसे नए CPT नाम से मैन्युअल रूप से रीसेट करना होगा। इसके बाद यह ठीक काम करता है।
क्रिस राए

4

यदि आप नहीं चाहते हैं कि आप एसक्यूएल क्वेश्चन को स्वयं मैनुअल करें तो कुछ प्लगइन्स हैं जिनका आप उपयोग कर सकते हैं:

मैंने बड़े पैमाने पर पोस्ट बदलने के लिए सफलतापूर्वक पोस्ट प्रकार का उपयोग किया है ।

Invididual पदों को परिवर्तित करने के लिए तो Post Type Switcher एक बेहतर विकल्प है।


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

यह पोस्ट प्रकार परिवर्तित करने के लिए लगता है, उनका नाम नहीं बदला
vladkras
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.