WordPress.org

Make WordPress Core

Changeset 41213


Ignore:
Timestamp:
08/03/17 13:20:38 (4 months ago)
Author:
johnbillion
Message:

Users: Switch to using array style filters for the newly introduced filters in wp_password_change_notification() and wp_new_user_notification().

This introduces three new filters, replacing those that were introduced in [41153]:

  • wp_password_change_notification_email
  • wp_new_user_notification_email_admin
  • wp_new_user_notification_email

Props pbearne

Fixes #38068

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/pluggable.php

    r41156 r41213  
    17491749        $blogname = wp_specialchars_decode(get_option('blogname'), ENT_QUOTES); 
    17501750 
    1751         /* translators: %s: site title */ 
    1752         $subject = sprintf( __( '[%s] Password Changed' ), $blogname ); 
     1751        $wp_password_change_notification_email = array( 
     1752            'to'      => get_option( 'admin_email' ), 
     1753            /* translators: Password change notification email subject. %s: Site title */ 
     1754            'subject' => __( '[%s] Password Changed' ), 
     1755            'message' => $message, 
     1756            'headers' => '', 
     1757        ); 
    17531758 
    17541759        /** 
    1755          * Filters the subject of the password change notification email sent to the site admin. 
     1760         * Filters the contents of the password change notification email sent to the site admin. 
    17561761         * 
    17571762         * @since 4.9.0 
    17581763         * 
    1759          * @param string  $subject  Email subject. 
     1764         * @param array   $wp_password_change_notification_email { 
     1765         *     Used to build wp_mail(). 
     1766         * 
     1767         *     @type string $to      The intended recipient - site admin email address. 
     1768         *     @type string $subject The subject of the email. 
     1769         *     @type string $message The body of the email. 
     1770         *     @type string $headers The headers of the email. 
     1771         * } 
    17601772         * @param WP_User $user     User object for user whose password was changed. 
    17611773         * @param string  $blogname The site title. 
    17621774         */ 
    1763         $subject = apply_filters( 'wp_password_change_notification_subject', $subject, $user, $blogname ); 
    1764  
    1765         /** 
    1766          * Filters the message body of the password change notification email sent to the site admin. 
    1767          * 
    1768          * @since 4.9.0 
    1769          * 
    1770          * @param string  $message Email message. 
    1771          * @param WP_User $user    User object for user whose password was changed. 
    1772          */ 
    1773         $message = apply_filters( 'wp_password_change_notification_message', $message, $user ); 
    1774  
    1775         /** 
    1776          * Filters the email headers of the password change notification admin email sent to the site admin. 
    1777          * 
    1778          * @since 4.9.0 
    1779          * 
    1780          * @param string  $headers Email headers. 
    1781          * @param WP_User $user    User object for user whose password was changed. 
    1782          */ 
    1783         $headers = apply_filters( 'wp_password_change_notification_headers', '', $user ); 
    1784  
    1785         wp_mail( get_option( 'admin_email' ), wp_specialchars_decode( $subject ), $message, $headers ); 
     1775        $wp_password_change_notification_email = apply_filters( 'wp_password_change_notification_email', $wp_password_change_notification_email, $user, $blogname ); 
     1776 
     1777        wp_mail( 
     1778            $wp_password_change_notification_email['to'], 
     1779            wp_specialchars_decode( sprintf( $wp_password_change_notification_email['subject'], $blogname ) ), 
     1780            $wp_password_change_notification_email['message'], 
     1781            $wp_password_change_notification_email['headers'] 
     1782        ); 
    17861783    } 
    17871784} 
     
    18221819        $switched_locale = switch_to_locale( get_locale() ); 
    18231820 
    1824         /* translators: %s: site title */ 
    1825         $subject  = sprintf( __( '[%s] New User Registration' ), $blogname ); 
    18261821        /* translators: %s: site title */ 
    18271822        $message  = sprintf( __( 'New user registration on your site %s:' ), $blogname ) . "\r\n\r\n"; 
     
    18311826        $message .= sprintf( __( 'Email: %s' ), $user->user_email ) . "\r\n"; 
    18321827 
     1828        $wp_new_user_notification_email_admin = array( 
     1829            'to'      => get_option( 'admin_email' ), 
     1830            /* translators: Password change notification email subject. %s: Site title */ 
     1831            'subject' => __( '[%s] New User Registration' ), 
     1832            'message' => $message, 
     1833            'headers' => '', 
     1834        ); 
     1835 
    18331836        /** 
    1834          * Filters the subject of the new user notification email sent to the site admin. 
     1837         * Filters the contents of the new user notification email sent to the site admin. 
    18351838         * 
    18361839         * @since 4.9.0 
    18371840         * 
    1838          * @param string  $subject  Email subject. 
    1839          * @param WP_User $user     User object for newly registered user. 
     1841         * @param array   $wp_new_user_notification_email { 
     1842         *     Used to build wp_mail(). 
     1843         * 
     1844         *     @type string $to      The intended recipient - site admin email address. 
     1845         *     @type string $subject The subject of the email. 
     1846         *     @type string $message The body of the email. 
     1847         *     @type string $headers The headers of the email. 
     1848         * } 
     1849         * @param WP_User $user     User object for new user. 
    18401850         * @param string  $blogname The site title. 
    18411851         */ 
    1842         $subject = apply_filters( 'wp_new_user_notification_admin_subject', $subject, $user, $blogname ); 
    1843  
    1844         /** 
    1845          * Filters the message body of the new user notification email sent to the site admin. 
    1846          * 
    1847          * @since 4.9.0 
    1848          * 
    1849          * @param string  $message Email message. 
    1850          * @param WP_User $user    User object for newly registered user. 
    1851          */ 
    1852         $message = apply_filters( 'wp_new_user_notification_admin_message', $message, $user ); 
    1853  
    1854         /** 
    1855          * Filters the email headers of the new user notification email sent to the site admin. 
    1856          * 
    1857          * @since 4.9.0 
    1858          * 
    1859          * @param string  $headers Email headers. 
    1860          * @param WP_User $user    User object for newly registered user. 
    1861          */ 
    1862         $headers = apply_filters( 'wp_new_user_notification_admin_headers', '', $user ); 
    1863  
    1864         @wp_mail( get_option( 'admin_email' ), wp_specialchars_decode( $subject ), $message, $headers ); 
     1852        $wp_new_user_notification_email_admin = apply_filters( 'wp_new_user_notification_email_admin', $wp_new_user_notification_email_admin, $user, $blogname ); 
     1853 
     1854        @wp_mail( 
     1855            $wp_new_user_notification_email_admin['to'], 
     1856            wp_specialchars_decode( sprintf( $wp_new_user_notification_email_admin['subject'], $blogname ) ), 
     1857            $wp_new_user_notification_email_admin['message'], 
     1858            $wp_new_user_notification_email_admin['headers'] 
     1859        ); 
    18651860 
    18661861        if ( $switched_locale ) { 
     
    18901885    $switched_locale = switch_to_locale( get_user_locale( $user ) ); 
    18911886 
    1892     /* translators: %s: site title */ 
    1893     $subject = sprintf( __( '[%s] Your username and password info' ), $blogname ); 
    18941887    /* translators: %s: user login */ 
    18951888    $message = sprintf(__('Username: %s'), $user->user_login) . "\r\n\r\n"; 
     
    18991892    $message .= wp_login_url() . "\r\n"; 
    19001893 
    1901     /** 
    1902      * Filters the subject of the new user email sent to the new user. 
     1894    $wp_new_user_notification_email = array( 
     1895        'to'      => $user->user_email, 
     1896        /* translators: Password change notification email subject. %s: Site title */ 
     1897        'subject' => __( '[%s] Your username and password info' ), 
     1898        'message' => $message, 
     1899        'headers' => '', 
     1900    ); 
     1901 
     1902    /** 
     1903     * Filters the contents of the new user notification email sent to the new user. 
    19031904     * 
    19041905     * @since 4.9.0 
    19051906     * 
    1906      * @param string  $subject  Email subject. 
    1907      * @param WP_User $user     User object for newly registered user. 
     1907     * @param array   $wp_new_user_notification_email { 
     1908     *     Used to build wp_mail(). 
     1909     * 
     1910     *     @type string $to      The intended recipient - New user email address. 
     1911     *     @type string $subject The subject of the email. 
     1912     *     @type string $message The body of the email. 
     1913     *     @type string $headers The headers of the email. 
     1914     * } 
     1915     * @param WP_User $user     User object for new user. 
    19081916     * @param string  $blogname The site title. 
    19091917     */ 
    1910     $subject = apply_filters( 'wp_new_user_notification_subject', $subject, $user, $blogname ); 
    1911  
    1912     /** 
    1913      * Filters the message body of the new user email sent to the new user. 
    1914      * 
    1915      * @since 4.9.0 
    1916      * 
    1917      * @param string  $message Email message. 
    1918      * @param WP_User $user    User object for newly registered user. 
    1919      * @param string  $key     User activation key. 
    1920      */ 
    1921     $message = apply_filters( 'wp_new_user_notification_message', $message, $user, $key ); 
    1922  
    1923     /** 
    1924      * Filters the email headers of the new user email sent to the new user. 
    1925      * 
    1926      * @since 4.9.0 
    1927      * 
    1928      * @param string  $headers Email headers. 
    1929      * @param WP_User $user    User object for newly registered user. 
    1930      */ 
    1931     $headers = apply_filters( 'wp_new_user_notification_headers', '', $user ); 
    1932  
    1933     wp_mail( $user->user_email, wp_specialchars_decode( $subject ), $message, $headers ); 
     1918    $wp_new_user_notification_email = apply_filters( 'wp_new_user_notification_email', $wp_new_user_notification_email, $user, $blogname ); 
     1919 
     1920    wp_mail( 
     1921        $wp_new_user_notification_email['to'], 
     1922        wp_specialchars_decode( sprintf( $wp_new_user_notification_email['subject'], $blogname ) ), 
     1923        $wp_new_user_notification_email['message'], 
     1924        $wp_new_user_notification_email['headers'] 
     1925    ); 
    19341926 
    19351927    if ( $switched_locale ) { 
Note: See TracChangeset for help on using the changeset viewer.