Skip to:
Content

BuddyPress.org

Ticket #7996: 7996.02.patch

File 7996.02.patch, 2.3 KB (added by boonebgorges, 7 years ago)
  • src/bp-core/bp-core-filters.php

    diff --git src/bp-core/bp-core-filters.php src/bp-core/bp-core-filters.php
    index 5844743ff..b2645961c 100644
    add_filter( 'bp_email_get_headers', 'bp_email_set_default_headers', 6, 4 ); 
    10351035 */
    10361036function bp_email_set_default_tokens( $tokens, $property_name, $transform, $email ) {
    10371037        $tokens['site.admin-email'] = bp_get_option( 'admin_email' );
    1038         $tokens['site.url']         = home_url();
     1038        $tokens['site.url']         = bp_get_root_domain();
    10391039        $tokens['email.subject']    = $email->get_subject();
    10401040
    10411041        // These options are escaped with esc_html on the way into the database in sanitize_option().
    function bp_email_set_default_tokens( $tokens, $property_name, $transform, $emai 
    10801080        }
    10811081
    10821082        // Email preheader.
    1083         $post = $email->get_post_object();
    1084         if ( $post ) {
    1085                 $tokens['email.preheader'] = sanitize_text_field( get_post_meta( $post->ID, 'bp_email_preheader', true ) );
     1083        $preheader = $email->get_preheader();
     1084        if ( $preheader ) {
     1085                $tokens['email.preheader'] = $preheader;
    10861086        }
    10871087
    10881088        return $tokens;
  • src/bp-core/classes/class-bp-email.php

    diff --git src/bp-core/classes/class-bp-email.php src/bp-core/classes/class-bp-email.php
    index 19c22c60e..9112bc8c0 100644
    class BP_Email { 
    6969         */
    7070        protected $from = null;
    7171
     72        /**
     73         * Email preheader.
     74         *
     75         * @since 4.0.0
     76         *
     77         * @var string
     78         */
     79        protected $preheader = null;
     80
    7281        /**
    7382         * Email headers.
    7483         *
    class BP_Email { 
    272281                return apply_filters( 'bp_email_get_property', $retval, $property_name, $transform, $this );
    273282        }
    274283
     284        /**
     285         * Get email preheader.
     286         *
     287         * @since 4.0.0
     288         */
     289        public function get_preheader() {
     290                if ( null !== $this->preheader ) {
     291                        return $this->preheader;
     292                }
     293
     294                $preheader = '';
     295
     296                $post = $this->get_post_object();
     297                if ( $post ) {
     298                        $switched = false;
     299
     300                        // Switch to the root blog, where the email post lives.
     301                        if ( ! bp_is_root_blog() ) {
     302                                switch_to_blog( bp_get_root_blog_id() );
     303                                $switched = true;
     304                        }
     305
     306                        $preheader = sanitize_text_field( get_post_meta( $post->ID, 'bp_email_preheader', true ) );
     307
     308                        if ( $switched ) {
     309                                restore_current_blog();
     310                        }
     311                }
     312
     313                $this->preheader = $preheader;
     314
     315                return $this->preheader;
     316        }
     317
    275318        /**
    276319         * Get email headers.
    277320         *