मैं अपने पृष्ठों संस्करण की सामग्री को कैसे नियंत्रित रख सकता हूं?


13

हमारे पास एक वर्डप्रेस-आधारित वेबसाइट है जो हमारे REST API को प्रलेखन प्रदान करती है। चूंकि हमारा एपीआई लगातार बदल रहा है, इसलिए प्रलेखन है। हालाँकि, हम दस्तावेज़ीकरण संस्करण को नियंत्रित रखना चाहते हैं, ताकि इसे एपीआई कमिट के विरुद्ध मिलान किया जा सके। क्या वर्डप्रेस पेजों को दूरस्थ रिपॉजिटरी (उदाहरण के लिए GitHub) से अपनी सामग्री प्राप्त करने का एक तरीका है? या फिर कुछ रिपॉजिटरी से वर्डप्रेस को कंटेंट पुश करने का कोई तरीका है?

जवाबों:


6

आपको पहले से ही कुछ इस तरह से बनाया गया है: संशोधन

// Define the nr of saved revisions in your wp-config.php
define( 'WP_POST_REVISIONS', 30 );

आप बस get_posts()एक post_typeके साथ फोन करके उन्हें हड़प सकते हैं revision

बस दो संशोधनों के बीच अंतर दिखाने के लिए wp_text_diff()

// Example
$revisions = get_posts( array(
    'post_type' => 'revision'
) );
echo wp_text_diff(
     $revisions[0]['post_content']
    ,$revisions[1]['post_content']
    ,array(
         'title'       => 'Revision diff'
        ,'title_left'  => $revisions[0]['post_title']
        ,'title_right' => $revisions[1]['post_title']
     )
);

उदाहरण के लिए पिछले संस्करण के साथ अंतिम संस्करण के लिए अंतिम करने के लिए, आप इसका उपयोग कर सकते हैं end( $revisions )['post_content']और इसके साथ अंतर कर सकते हैं $revisions[ count( $revisions ) -2 ]['post_content']। (नोट: -2जैसा कि ऐरे इंडेक्स शून्य से शुरू होता है और आप अंतिम से पहले संस्करण चाहते हैं।)


मुझे रिविजन का विचार पसंद है। और वहाँ एक लोकप्रिय प्लगइन WP दस्तावेज़ संशोधन बेहतर संशोधन का प्रबंधन करने में मदद कर सकता है।
एएन ट्रान

@Rilwis एक उत्तर होना चाहिए :)
kaiser

5

आप एक Git हुक का उपयोग कर सकते हैं और प्रति XML-RPC वर्डप्रेस पर पोस्ट कर सकते हैं । Git हुक किसी भी निष्पादन योग्य फ़ाइल, यहां तक ​​कि PHP भी हो सकता है।

एक अन्य विकल्प - गिटहब पर - ईमेल हुक का उपयोग करना है: ईमेल पर जाएं https://github.com/username/projectname/admin/hooks, ईमेल का चयन करें और ब्लॉग पर एक ईमेल भेजें। ईमेल प्रति पोस्ट सक्षम करें ।


2
+1 अब हमें बस दोनों विशेषताओं के संयोजन की जरूरत है (ओपी द्वारा ठोस प्लगइन के रूप में बनाया गया है) :)
kaiser
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.