पोस्ट रिवीजन कैसे डिलीट करें?


9

मैंने संशोधन की संख्या के लिए कोई सीमा निर्धारित नहीं की है, जिससे मेरी कुछ पोस्ट में 20 से अधिक संशोधन हैं, इसलिए इन संशोधनों को कैसे हटाया जाए?

वैसे, मैं WPMU का उपयोग कर रहा हूं और मेरे पास कई ब्लॉग हैं, इसलिए अपने सभी ब्लॉगों के लिए वर्डप्रेस संशोधन कैसे हटाएं?

जवाबों:


10

यह उपयोग करने के लिए एक अधिक सुरक्षित क्वेरी है और पोस्टमैटा और term_relationship से संबंधित प्रविष्टियों को हटा देगा, इसके जवाब में मृत्युलेख क्वेरी के विपरीत ।

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

DELETE a,b,c
FROM wp_{id}_posts a
LEFT JOIN wp_{id}_term_relationships b ON (a.ID = b.object_id)
LEFT JOIN wp_{id}_postmeta c ON (a.ID = c.post_id)
WHERE a.post_type = 'revision'

इसे चलाने के बाद, डेटाबेस को phpmyadmin में ऑप्टिमाइज़ करें।

और भविष्य के संशोधनों को रोकने के लिए wp-config.php के शीर्ष के पास इस पंक्ति को जोड़ें:

define('WP_POST_REVISIONS', 0);

या एक संशोधन सहेजें:

define('WP_POST_REVISIONS', 1);

आप सही कह रहे हैं, यह बहुत कुशल भी है ... मेरे जवाब को जल्दबाजी में पोस्ट किया और WP MU भाग को भी नोटिस नहीं किया। +1।
मृत्युंजय

और अंतिम 3 कहने के अलावा संशोधन कैसे हटाएं?
Matoeil

2

एक प्लगइन, WP ऑप्टिमाइज़ भी है जो आपको ऐसा करने में मदद कर सकता है

वेबसाइट से:

WP-Optimize एक WordPress 2.9 ++ डेटाबेस क्लीनअप और ऑप्टिमाइज़ेशन टूल है। इसे आपके डेटाबेस तालिकाओं को अनुकूलित करने के लिए PhMMyAdmin की आवश्यकता नहीं है।

यह आपको पोस्ट रिविजन, स्पैम कतार में टिप्पणी, कुछ क्लिक के भीतर अप्रूव्ड टिप्पणियों को हटाने की अनुमति देता है।


कृपया बताएं कि प्लगइन क्या करता है और यह समस्या को कैसे हल करता है।
FUXIA

1
कई प्लगइन्स हैं जो संशोधन को साफ करते हैं और phpmyadmin के बिना अनुकूलित करते हैं; उनमें से कोई भी स्पष्ट रूप से WPMU या मल्टीसाइट के साथ काम करने के लिए नहीं कहा गया है।
13

क्या यह प्लगइन मेरे डेटाबेस को नुकसान पहुंचाएगा?
ह्यूजमेओ

मैंने उन दो साइटों पर प्लगइन का उपयोग किया है जिन्हें मैं बिना किसी समस्या के चलाता हूं। लेकिन यह हमेशा एक अच्छा विचार है कि पहले अपने डीबी का बैकअप लें (लेकिन यह सबसे अच्छा अभ्यास है)।
darronz

0

अपने सभी Wordpress संशोधनों को हटाने के लिए, आप इस क्वेरी का उपयोग कर सकते हैं:

DELETE FROM wp_posts WHERE post_type = "revision";


मेरे पास wpmu पर 100 से अधिक ब्लॉग हैं, इसलिए मुझे चलना चाहिए DELETE FROM wp_n_posts WHERE post_type = "revision"; n समय के लिए, है ना? लेकिन यह काफी उबाऊ है :(
hugemeow

0

आप इस कोड को अपनी थीम की functions.phpफ़ाइल में भी जोड़ सकते हैं :

if (!defined('WP_POST_REVISIONS')) define('WP_POST_REVISIONS', 3);
if (!defined('WP_POST_REVISIONS')) define('WP_POST_REVISIONS', false);

यह कोड जाँचता है कि क्या WP_POST_REVISIONSसीमा निर्धारित की गई है wp-config.php, यदि यह तब नहीं है, तो यह फ़ंक्शन के लिए एक पैरामीटर पास करता है जो पोस्ट संशोधन को सीमित करता है। ऊपर के उदाहरण में, पोस्ट 3 संशोधनों तक सीमित हैं।

यह एक अच्छा समाधान है जब उन लोगों के लिए थीम का निर्माण किया जाता है जो न जाने कैसे (या न चाहते हैं) कोड जोड़ते हैं।

Wp-functions.com से लिया गया


2
यह उत्तर संशोधन हटाने के बारे में बात नहीं करता है। लेकिन भविष्य की सामग्री के लिए संशोधन को अक्षम करने के बारे में इसकी अच्छी सलाह।
नीलाम्बर शर्मा

0

पोस्ट संशोधन को साफ करने के लिए आप WP स्वीप प्लगइन का उपयोग कर सकते हैं । प्लगइन को सक्रिय करने के बाद, अपने वर्डप्रेस डेटाबेस को साफ करने के लिए टूल्स »स्वीप पर जाएं।


0

उत्तर के लिए धन्यवाद, मार्कट्रेल करें। {आईडी} के बारे में वाक्य रचना में कुछ भी मेरे लिए काम नहीं आया। मैंने {id} को 4009 में बदल दिया, मेरी एक पोस्ट आईडी, लेकिन कोई सफलता नहीं। मुझे https://dev-notes.eu/2017/11/manage-and-safely-delete-revisions-in-wordpress/ पर एक समाधान मिला

DELETE a,b,c FROM wp_posts a
LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id)
LEFT JOIN wp_postmeta c ON (a.ID = c.post_id)
WHERE a.post_type = 'revision';

यह ठीक काम किया।

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