अलग-अलग प्लगइन्स के लिए अद्यतन अधिसूचना को अक्षम करें


49

क्या विशिष्ट प्लगइन्स के लिए अद्यतन सूचनाएं अक्षम करने का कोई तरीका है?

एक प्लगइन डेवलपर के रूप में, मेरे पास कुछ प्लग इन परीक्षण के लिए svn ट्रंक संस्करण का उपयोग करके मेरी व्यक्तिगत साइट पर स्थापित किया गया है, लेकिन वही प्लगइन्स प्लगइन साइट से उपलब्ध हैं। इन मामलों में WP नवीनतम संस्करण को सबसे हाल ही में प्रकाशित संस्करण मानता है और लगातार मुझे चेतावनी देने की कोशिश करता है कि अपडेट उपलब्ध हैं।

मैं अभी भी अन्य प्लगइन्स पर अपडेट के लिए सूचनाएं देखना चाहता हूं, लेकिन Updates (2)हेडर में नोटिस को लगातार अनदेखा करना अनॉयिंग है !


बस प्लगइन फ़ाइल खोलें और संस्करण संख्या को 9.9.9 में बदल दें
बैनटेनट

क्षमा करें @Bainternet, लेकिन वह भी हैक हो गया होगा क्योंकि साइट एक svn-checkout है और प्लगइन एक svn:externalसंदर्भ से आता है प्लगइन विकास कोड। किसी प्रोडक्शन सर्वर पर स्थानीय रूप से संशोधित फाइल रखना एक विकल्प नहीं है। हमीदुल्ला का फ़िल्टर काम करता है क्योंकि यह साइट के लिए कोड रिपॉजिटरी में सहेजा जाता है।
कालेब

हाँ, मैं svn
Bainternet

आप बस WordPress.org पर Websiteguy द्वारा डिसेबल अपडेट्स मैनेजर प्लगइन का उपयोग कर सकते हैं ।
मैथ्यू

जवाबों:


67

उदाहरण के लिए यदि आप नहीं चाहते कि Wordpress को akismet के लिए अद्यतन सूचनाएँ दिखें, तो आप ऐसा करेंगे:

function filter_plugin_updates( $value ) {
    unset( $value->response['akismet/akismet.php'] );
    return $value;
}
add_filter( 'site_transient_update_plugins', 'filter_plugin_updates' );

1
मैंने उस अंत में रखा ./wp-config.php, प्लगइन फ़ाइल पथ को बदल दिया और इसने काम किया।
कालेब

6
आप अपनी थीम के फंक्शन्स में डाल सकते हैं। यदि संभव नहीं है तो आप एक अलग प्लगइन फाइल में रख सकते हैं। मेरे विचार में इसे wp-config.php में डालना एक अच्छा विचार नहीं है।
हमीदुल्लाह खान

1
मैं वास्तव में अपने फ़ंक्शन को थीम से बंधा हुआ नहीं चाहता हूं, और एक प्लगइन जोड़ना ऐसा लगता है जैसे कि मुझे प्राप्त हैकिंग प्लग को हैक करना है। क्या आप समझा सकते हैं कि आपको क्यों लगता है कि wp-config.php साइट विशिष्ट कॉन्फ़िगरेशन हैक करने के लिए एक अच्छी जगह नहीं है?
कालेब

बहुत अच्छा समाधान, जो मेरे लिए function.php में ठीक काम करता है। सूची में और अधिक प्लगइन्स को बस एक और अनसेट () जोड़कर जोड़ना आसान है ... गुड टिप हमीदुल्लाह ..
लार्स कौडल

2
@ कॉलेब के समान टिप्पणी वाले लोगों के लिए, wp-content फ़ोल्डर में एक नया फ़ोल्डर mu-pluginsबनाएं जिसका नाम है: और एक छोटा सा प्लगइन बनाएं, जिसे आप inthere छोड़ दें। जैसा कि ऊपर कुछ wp-config.phpगलत तरीके से करने के लिए imho द्वारा उल्लेख किया गया है इसे जोड़ने के लिए।
चार्ल्स

30

हमीदुल्ला खान का जवाब एक PHP चेतावनी को फेंक देगा। इसे शामिल करें यदि क्लॉज यह सुनिश्चित करने के लिए जांचने के लिए है कि यह उस प्लगइन की प्रतिक्रिया को समाप्त करने से पहले एक वस्तु है।

'चेतावनी: गैर-वस्तु की संपत्ति को संशोधित करने का प्रयास'

चेतावनियों से बचने के लिए यह प्रयास करें (प्लगइन फ़ाइल के लिए कोड):

// remove update notice for forked plugins
function remove_update_notifications($value) {

    if ( isset( $value ) && is_object( $value ) ) {
        unset( $value->response[ plugin_basename(__FILE__) ] );
    }

    return $value;
}
add_filter( 'site_transient_update_plugins', 'remove_update_notifications' );

मुझे यह वास्तविक प्लगइन में रखना पसंद है। चूँकि मैंने कभी भी किसी प्लगइन पर केवल अपडेट को अक्षम किया है क्योंकि मैंने कोड को एडिट या फोर्क किया है और अपडेट पर अपने संपादन खोना नहीं चाहता है, मैंने पहले ही प्लगइन को संपादित कर लिया है और इस प्रकार इसे अधिक संपादित करने में कोई आपत्ति नहीं है। यह मेरे कार्यों को थोड़ा साफ करता है। लेकिन अगर आप चाहें तो इसे फ़ंक्शंस फ़ाइल में डाल सकते हैं और उस पद्धति का एक फ़ायदा यह है कि आप उस प्लगइन के लिए एक और अनसेट लाइन जोड़कर अपडेट से कई प्लगइन्स निकाल सकते हैं, जैसे कि (functions.php के लिए कोड)

// remove update notice for forked plugins
function remove_update_notifications( $value ) {

    if ( isset( $value ) && is_object( $value ) ) {
        unset( $value->response[ 'hello.php' ] );
        unset( $value->response[ 'akismet/akismet.php' ] );
    }

    return $value;
}
add_filter( 'site_transient_update_plugins', 'remove_update_notifications' );

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

2

कोड के साथ सभी अपडेट अधिसूचनाएं अक्षम करें

function remove_core_updates(){
        global $wp_version;return(object) array('last_checked'=> time(),'version_checked'=> $wp_version,);
    }
    add_filter('pre_site_transient_update_core','remove_core_updates');
    add_filter('pre_site_transient_update_plugins','remove_core_updates');
    add_filter('pre_site_transient_update_themes','remove_core_updates');

कोड वर्डप्रेस कोर, प्लगइन्स और थीम के लिए अपडेट नोटिफिकेशन को निष्क्रिय कर देगा।


"व्यक्तिगत प्लगइन्स" कुंजी है
गंगेश

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