पासवर्ड बदलने के बाद ईमेल सूचना को अक्षम करें


14

यदि उपयोगकर्ता या व्यवस्थापक उपयोगकर्ता के पासवर्ड को बदलते हैं तो मैं ईमेल नोटिफिकेशन को अक्षम करना चाहता हूं।

कुछ Googleling के बाद मुझे पता चला कि मुझे एक प्लगइन बनाने की ज़रूरत है और इसमें wp_password_change_notificationपाए गए फ़ंक्शन को अधिलेखित करें pluggable.php

यह प्लगइन और फ़ंक्शन है:

<?php
/*
Plugin Name: Stop email change password
Description: Whatever
*/

if ( !function_exists( 'wp_password_change_notification' ) ) {
    function wp_password_change_notification() {}
}
?>

मैंने अपने प्लगइन फ़ोल्डर में फ़ाइल अपलोड की और इसे अपने व्यवस्थापक पैनल में सक्रिय कर दिया!

यह एक प्लगइन के साथ किया जाना चाहिए क्योंकि pluggable.phpफ़ाइल फ़ाइल से पहले भरी हुई है functions.php

वैसे भी यह मेरे लिए काम नहीं करता है ......

उपयोगकर्ता अभी भी ईमेल प्राप्त करता है।

मैंने सभी प्लगइन्स को निष्क्रिय कर दिया है और एक साफ इंस्टॉल पर प्लगइन चलाएं ताकि कोई हस्तक्षेप न हो

WP_DEBUGसाथ ही किसी भी त्रुटि प्रदर्शित नहीं करता है !!!

क्या कोई मुझे बता सकता है कि क्या बदलना है या कैसे इसे किसी अन्य तरीके से ठीक करना है (कोर संशोधनों को छोड़कर)

म।


1
मैंने संघर्ष भी किया और कस्टम प्लगइन बनाने / उपयोग करने की कोशिश की, वर्डप्रेस-फिल्टर्स को गलत पर सेट किया, लेकिन कुछ भी काम नहीं किया ... बस आज मैं मैनेज ई-मेल प्लगइन पर ठोकर खाई और यह काम करता है :)
लिएंडर

जवाबों:


20

उपयोगकर्ता ईमेल अधिसूचना को अक्षम करने के लिए, इसे एक प्लगइन या थीम में जोड़ें:

add_filter( 'send_password_change_email', '__return_false' );

wp_password_change_notification()उपयोगकर्ता द्वारा अपना पासवर्ड बदलने पर FYI, व्यवस्थापक ईमेल सूचना को नियंत्रित करता है


11

निष्क्रिय करने के लिए व्यवस्थापक ईमेल सूचना जब एक उपयोगकर्ता अपने स्वयं के पासवर्ड रीसेट करता है , एक प्लगइन बनाने के (या होना चाहिए प्लगइन का उपयोग निम्नलिखित कोड का टुकड़ा का उपयोग कर):

/**
 * Disable Admin Notification of User Password Change
 *
 * @see pluggable.php
 */
if ( ! function_exists( 'wp_password_change_notification' ) ) {
    function wp_password_change_notification( $user ) {
        return;
    }
}

यह निम्न ईमेल को सेटिंग्स> सामान्य में प्रशासक के ईमेल पर भेजे जाने से रोक देगा:

से: WordPress <wordpress@example.com>
To: admin@example.com
विषय: [वर्डप्रेस] पासवर्ड परिवर्तित

उपयोगकर्ता के लिए पासवर्ड बदला गया: उपयोगकर्ता नाम

इस ईमेल सूचना को दबाने को एक प्लगइन के साथ संभाला जाना चाहिए क्योंकि pluggable.phpयह किसी विषय की functions.phpफ़ाइल से पहले लोड किया गया है ।


यदि आप इसके बजाय उपयोगकर्ता ईमेल अधिसूचना को अक्षम करना चाहते हैं जो एक उपयोगकर्ता ने सफलतापूर्वक अपना पासवर्ड बदल दिया है , तो निम्न में दिए गए फ़िल्टर का उपयोग करें functions.php:

/**
 * Disable User Notification of Password Change Confirmation
 */
add_filter( 'send_password_change_email', '__return_false' );

यह निम्नलिखित ईमेल को भेजे जाने से दबा देगा:

से: WordPress <wordpress@example.com>
To: username@example.com
विषय: [वर्डप्रेस] पासवर्ड परिवर्तित

हाय उपयोगकर्ता नाम,

यह नोटिस पुष्टि करता है कि आपका पासवर्ड वर्डप्रेस पर बदल दिया गया था।

यदि आपने अपना पासवर्ड नहीं बदला है, तो कृपया admin@example.com पर साइट व्यवस्थापक से संपर्क करें

यह ईमेल username@example.com पर भेजा गया है

सादर,
सभी वर्डप्रेस
http://example.com/ पर


2
इस जवाब में एक बड़ी गलती है। फ़िल्टर नाम "send_password_change_email" नहीं "send_email_change_email" है। codex.wordpress.org/Plugin_API/Filter_Reference/…
Tristan CHARBONNIER

का उल्लेख किया। संदर्भ के लिए, दो फिल्टर संबंधित हैं और उपयोगकर्ता द्वारा ईमेल या पासवर्ड बदलने पर उपयोगकर्ता अधिसूचना को अक्षम करने के लिए उपयोग किया जा सकता है । या तो उपयोग का मामला इस बात पर निर्भर करता है कि आप किस अधिसूचना को दबाना चाहते हैं - ईमेल परिवर्तन या पासवर्ड परिवर्तन। एक साफ तस्वीर के लिए, वर्डप्रेस समारोह का उल्लेख wp_update_user()में wp-includes/user.php: core.trac.wordpress.org/browser/tags/4.9.5/src/wp-includes/...
rjb

2

उपयोगकर्ता द्वारा अपडेट किए जाने पर वर्डप्रेस डिफ़ॉल्ट रूप से अधिसूचना भेजता है wp_update_user()

pluggable.phpएक खाली फ़ंक्शन के साथ फ़िल्टर, संशोधन या ओवरराइटिंग का उपयोग करके इसे अधिलेखित करने की कोशिश करना , काम नहीं करता है।

इसके बजाय उपयोग करें wp_set_password( $password, $user_id )जब आप नहीं चाहते कि अधिसूचना ई-मेल पासवर्ड रीसेट पर उपयोगकर्ताओं / व्यवस्थापक के लिए ट्रिगर हो।


1

इस कोड को कॉपी करें और disable_email.php के रूप में सहेजें। फिर उस फ़ाइल को "wp-content / plugins /" निर्देशिका में रखें। और एडमिन पैनल से सक्रिय है।

<?php
/*
Plugin Name: Stop email change password
Description: Whatever
*/

if (!function_exists('wp_password_change_notification')) {
    function wp_password_change_notification($user) {
        return;
    }
}
?>

??? मैंने जो किया, यह कैसे अलग है?
इंटरएक्टिव

क्या आपने एक प्लगइन बनाया है और उस पर अपना कोड रखा है?
सब्बीर हसन

हाँ, जो मैंने सोचा था कि मैंने उसका वर्णन किया है। लेकिन अगर यह स्पष्ट नहीं था, तो मैं इस सवाल का अद्यतन करूँगा!
इंटरएक्टिव

अब कोशिश करो। मैंने जवाब अपडेट किया। यह अब काम करना चाहिए!
सब्बीर हसन

हा मैं अभी मिला और यह कोशिश की, लेकिन काम नहीं किया!
इंटरएक्टिव

1

अन्य उत्तर गलत हैं, क्योंकि जो लोग ईमेल बदलते समय ईमेल भेजते हैं, न कि पासवर्ड बदलने पर।

अपने सक्रिय विषय (या किसी प्लगइन में वैकल्पिक रूप से) के तहत अपने functions.php फ़ाइल में नीचे दिए गए कोड को जोड़ना चाहिए। संस्करण 4.6.1 के लिए मेरे लिए काम किया

/**
 * Disable sending of the password change email
 */
add_filter( 'send_password_change_email', '__return_false' );

आधिकारिक दस्तावेज देखें


अन्य सभी उत्तर गलत नहीं हो सकते हैं और हर समय नए उत्तर पोस्ट किए जाते हैं। आपको "अन्य" उत्तरों का संदर्भ देते समय अपने उत्तर में अधिक विशिष्ट होना चाहिए।
स्पार्की

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