- multisite email templates;

This commit is contained in:
nikitozzzzzzz
2018-05-30 18:34:24 +03:00
parent cc58ba5938
commit ca40103d9b
2 changed files with 30 additions and 8 deletions
+4 -3
View File
@@ -2526,11 +2526,12 @@ Use Only Cookies: <?php echo ini_get( 'session.use_only_cookies' ) ?
*/
function save_email_templates( $settings ) {
if ( empty( $settings['um_email_template'] ) )
if ( empty( $settings['um_email_template'] ) ) {
return $settings;
}
$template = $settings['um_email_template'];
$content = stripslashes( $settings[$template] );
$content = stripslashes( $settings[ $template ] );
$theme_template_path = UM()->mail()->get_template_file( 'theme', $template );
@@ -2545,7 +2546,7 @@ Use Only Cookies: <?php echo ini_get( 'session.use_only_cookies' ) ?
if ( $result !== false ) {
unset( $settings['um_email_template'] );
unset( $settings[$template] );
unset( $settings[ $template ] );
}
return $settings;
+26 -5
View File
@@ -366,8 +366,11 @@ if ( ! class_exists( 'um\core\Mail' ) ) {
*/
function locate_template( $template_name ) {
// check if there is template at theme folder
$blog_id = $this->get_blog_id();
$template = locate_template( array(
trailingslashit( 'ultimate-member/email' ) . $template_name . '.php'
trailingslashit( 'ultimate-member/email' . $blog_id ) . $template_name . '.php'
) );
//if there isn't template at theme folder get template file from plugin dir
@@ -446,9 +449,11 @@ if ( ! class_exists( 'um\core\Mail' ) ) {
$template_name_file = $this->get_template_filename( $template_name );
$ext = ! $html ? '.php' : '.html';
$blog_id = $this->get_blog_id();
// check if there is template at theme folder
$template = locate_template( array(
trailingslashit( 'ultimate-member/email' ) . $template_name_file . $ext
trailingslashit( 'ultimate-member/email' . $blog_id ) . $template_name_file . $ext
) );
// Return what we found.
@@ -456,6 +461,21 @@ if ( ! class_exists( 'um\core\Mail' ) ) {
}
/**
* Check blog ID on multisite, return '' if single site
*
* @return string
*/
function get_blog_id() {
$blog_id = '';
if ( is_multisite() ) {
$blog_id = '/' . get_current_blog_id();
}
return $blog_id;
}
/**
* Method returns expected path for template
*
@@ -473,7 +493,10 @@ if ( ! class_exists( 'um\core\Mail' ) ) {
switch( $location ) {
case 'theme':
$template_path = trailingslashit( get_stylesheet_directory() . '/ultimate-member/email' ). $template_name_file . $ext;
//save email template in blog ID folder if we use multisite
$blog_id = $this->get_blog_id();
$template_path = trailingslashit( get_stylesheet_directory() . '/ultimate-member/email' . $blog_id ). $template_name_file . $ext;
break;
case 'plugin':
$path = ! empty( $this->path_by_slug[ $template_name ] ) ? $this->path_by_slug[ $template_name ] : um_path . 'templates/email';
@@ -488,8 +511,6 @@ if ( ! class_exists( 'um\core\Mail' ) ) {
/**
* Ajax copy template to the theme
*
* @deprecated since 2.0.17
*
* @param bool $template
* @return bool
*/