2012-12-06 22 views
7

मैं एक मौजूदा WordPress साइटमहत्वपूर्ण संशोधनों विषय और साइट संरचना बनाने को अद्यतन करने कर रहा हूँ, और साथ ही अद्यतन प्लगइन्स जो करने के लिए mysql डेटाबेस में बारी की दुकान में अपने डेटा बना रही है।Wordpress साइट रिहाई प्रबंधन रणनीति

जहां तक ​​मुझे पता है 2 (3?) संभव यहाँ रणनीतियों देखते हैं हूँ:

  1. 'डंप और लोड' देव से MySQL डेटाबेस लाइव और नवीनतम अद्यतन के साथ WP-सामग्री फ़ोल्डर बदलने के लिए ।
  2. WP-importer के माध्यम से परिवर्तन आयात करें और नवीनतम अपडेट के साथ wp-content फ़ोल्डर को प्रतिस्थापित करें।
  3. WP व्यवस्थापक इंटरफ़ेस के माध्यम से मैन्युअल रूप से डेटाबेस परिवर्तन करें और नवीनतम अपडेट के साथ wp-content फ़ोल्डर को प्रतिस्थापित करें (यह केवल मामूली परिवर्तनों के लिए उपयोगी है)।

जबकि मैं अपने स्वयं के अलग वातावरण में विकास कर रहा हूं, यह वर्तमान में मौजूद एक मौजूदा वेबसाइट के लिए है और संपर्क फ़ॉर्म में टिप्पणियों और प्रविष्टियों जैसे लोगों से अपडेट प्राप्त करना जारी रखेगा, इसलिए मुझे उम्मीद है कि डेटाबेस होना चाहिए जब मैं अपने परिवर्तन जारी करता हूं तब से अलग।

यह देखते हुए उपर्युक्त विकल्प निम्नलिखित समस्याएं प्रदान करते हैं।

1. DUMP और लोड

'डंप और लोड' की रणनीति प्रश्न के रूप में मेरे डेटा पर्दे के पीछे अद्यतन की जा रही है से बाहर हो रहा है (यह इस रूप में मेरी पसंदीदा दृष्टिकोण हो गया होता आसानी से वापस लुढ़काया जाता है)।

परिणाम: नवीनतम अपडेट प्राप्त करने के लिए रिलीज के बाद डेटाबेस को सिंक्रनाइज़ करने की आवश्यकता है, अनुशंसित।

2. उपयोग आयातक

WP-Importer plugin पेज और पोस्ट आईडी का प्रयोग अपडेट कर दिया जाएगा, स्टाइल उस पोस्ट आईडी सक्रिय करने के लिए पर निर्भर करता है पंगा लेना। बदले में यह एक सीएसएस दुःस्वप्न बनाता है जिसे मैं टालना चाहता हूं, सीएस रिलीज के बाद रिलीज करने के बाद डेटाबेस पेज बनाए गए नए पेज/पोस्ट आईडी अपडेट करने के लिए।

परिणाम: बहुत ही जटिल, बहुत ही पेशेवर दृष्टिकोण नहीं, जो लंबे और जटिल रिलीज प्रक्रिया की ओर अग्रसर है।

3. अद्यतन डेटाबेस मैन्युअल

यह विकल्प छोटे परिवर्तन के लिए अच्छा है, लेकिन जब अधिक जटिल रिलीज के लिए कदम की सूची ठेस इंटरफेस पर पालन करने के लिए लंबी और पालन करने के लिए कठिन हो जाता है, इसे बनाने के लिए आसान बनाने गलतियां।

परिणाम: केवल एक अंतिम उपाय पेंच करने के लिए बहुत आसान है।

क्या मौजूदा वेबसाइटों के लिए एक मानक WordPress रिलीज रणनीति है?

तो मूल रूप से, मेरा प्रश्न यह है कि: किसी मौजूदा वेबसाइट को अपडेट करते समय अन्य वर्डप्रेस डेवलपर किस रिलीज प्रक्रिया का पालन करते हैं? क्या कोई ऐसा विकल्प है जिसे मैंने नीचे सूचीबद्ध नहीं किया है जो परेशानी को कम करता है और रिलीज के दौरान समय और जटिलता को कम करता है?

मैंने जीआईटी का उपयोग कर साइट के लिए स्रोत नियंत्रण स्थापित किया है और मुझे एएनटी या इसी तरह की रिलीज स्क्रिप्ट के माध्यम से चीजों को स्वचालित करने के लिए उपयोग किया जाता है, यह वर्तमान प्रोजेक्ट के लिए अधिक हो सकता है लेकिन कम से कम एक साधारण तरीके से जानना आदर्श होगा एक WordPress साइट को अद्यतन करने और इसे खराब करने की संभावना को कम करने के लिए।

धन्यवाद!

+2

अभी तक एक और कारण है कि मुझे वर्डप्रेस – cegfault

+1

पसंद नहीं है, मुझे पूरा यकीन है कि मैंने इसे [वर्डप्रेस स्टैक एक्सचेंज] (http://wordpress.stackexchange.com/) पर एक से अधिक बार चर्चा की है। – brasofilo

+0

फैंसी कि, इन दिनों वर्डप्रेस के लिए उनके पास एक स्टैक एक्सचेंज भी है .. परिवर्तन के पहले और बाद में DEV डेटाबेस पर DIFF के लिए –

उत्तर

2

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

चूंकि आप कहते हैं कि आप संशोधन कर रहे हैं तो मुझे लगता है कि आप जानते हैं कि एसक्यूएल परिवर्तन क्या करने जा रहे हैं? बस सुनिश्चित करें कि आप डीबी में किए गए सभी परिवर्तन SQL स्क्रिप्ट फ़ाइलों के रूप में हैं और केवल जीयूआई का उपयोग करके संपादन नहीं करते हैं (आप क्वेरी लिखने में मदद करने के लिए जीयूआई का उपयोग कर सकते हैं, लेकिन वास्तविक एसक्यूएल को सहेज सकते हैं)। आपके सभी परिवर्तन किए जाने के बाद आपके पास अपनी विकास प्रक्रिया के दौरान चलने वाली SQL स्क्रिप्ट्स का एक गुच्छा होना चाहिए - आप त्रुटियों का सामना किए बिना उन्हें फिर से चला सकते हैं।

फिर जब उत्पादन के लिए दबाव डालने का समय हो, तो उत्पादन का एक स्टेजिंग संस्करण बनाएं (जो उत्पादन के काफी वर्तमान डीबी बैकअप लेता है)। उस पर अपनी अद्यतन स्क्रिप्ट चलाएं और जांचें कि सबकुछ ठीक है। यदि ऐसा है, तो आप उत्पादन पर चला सकते हैं।

निश्चित रूप से किसी भी बदलाव को चलाने से पहले उत्पादन का बैकअप बनाते हैं!

+0

+1। उत्कृष्ट विचार। WP12HOME/WP_SITEURL चर के लिए –

2
  • WordFence के पीछे पुरुष एक तैनाती प्लगइन पर काम कर रहा था Deploymint कहा जाता है।
  • WP Stack नामक एक नया व्यक्ति है।
  • Metal Toad Media ने using Capistrano पर चर्चा की, लेकिन कैपिस्ट्रानो WP के लिए विशिष्ट नहीं है।
  • CrowdFavorite ने RAMP नामक एक सेवा लॉन्च की।

कहने की जरूरत नहीं है, आपके पास कुछ अन्य विकल्प हैं। यदि आप मैन्युअल रूप से डीबी परिवर्तन कर रहे हैं तो सुनिश्चित करें कि आप क्रमबद्ध डेटा के साथ प्रभावी ढंग से काम कर रहे हैं। मैं Search and Replace DB का उपयोग करने की सलाह देते हैं। वर्डप्रेस के पास changing the site url entirely from the wp-config file के लिए एक बहुत छोटी सी चाल थी।

+0

+1 और खोज + डीबी स्क्रिप्ट को बदलें के साथ धारावाहिक डेटा को ठीक करना। –

1

मुझे लगता है कि आपके पास परीक्षण वातावरण में सबकुछ चल रहा है। मैं तब:

  • अपने लाइव वातावरण में एक नया डेटाबेस बनाएं।
  • नई साइट के लिए सभी सामग्री और कॉन्फ़िगरेशन के साथ इसे प्रीलोड करें।
  • अपने परीक्षण वातावरण में, नए डेटाबेस को इंगित करने के लिए अपनी config.php को कॉन्फ़िगर करें।
  • सभी फ़ाइलों को लाइव सर्वर पर अपलोड करें। अंतिम रूप से अपना config.php अपलोड करें।

यह डाउनटाइम को कम करेगा।

+0

यह आपके डेटा को दृश्यों के पीछे अपडेट करने में एक समस्या प्रतीत होता है। – Maarten

+0

अच्छा सुझाव धन्यवाद, उपरोक्त विकल्प 3 के माध्यम से मैन्युअल अद्यतन करने का पीछा करते समय डाउनटाइम को कम करेगा (मैन्युअल डीबी परिवर्तन) –

संबंधित मुद्दे