WordPress как на ладони
wordpress jino

wp_mail_content_type хук-фильтр . WP 2.3.0

Позволяет изменить тип контента в письмах отправляемых через wp_mail(). Например с text/plain на text/html.

По умолчанию тип контента в WordPress равен 'text/plain'.

Использование

add_filter( 'wp_mail_content_type', 'filter_function_name_4869' );
function filter_function_name_4869( $content_type ){
	return 'text/html';
}
$content_type(Cтрока)

Тип контента.

Может быть:

  • text/plain
  • text/html
  • multipart/mixed
  • и т.д.

Где используется хук

wp_mail() остальные хуки:

Код хука-фильтра wp_mail_content_type

Фрагмент из: wp-includes/pluggable.php VER 4.9.2
...
	// Set to use PHP's mail()
	$phpmailer->isMail();

	// Set Content-Type and charset
	// If we don't have a content-type from the input headers
	if ( !isset( $content_type ) )
		$content_type = 'text/plain';

	/**
	 * Filters the wp_mail() content type.
	 *
	 * @since 2.3.0
	 *
	 * @param string $content_type Default wp_mail() content type.
	 */
	$content_type = apply_filters( 'wp_mail_content_type', $content_type );

	$phpmailer->ContentType = $content_type;

	// Set whether it's plaintext, depending on $content_type
	if ( 'text/html' == $content_type )
		$phpmailer->isHTML( true );

	// If we don't have a charset from the input headers
	if ( !isset( $charset ) )
		$charset = get_bloginfo( 'charset' );

	// Set the content-type and charset

	/**
	 * Filters the default wp_mail() charset.
...
Фрагмент из: wp-includes/formatting.php VER 4.9.2
...
				list( $type, $charset ) = explode( ';', $content );
				$content_type = trim( $type );
			} else {
				$content_type = trim( $content );
			}
			break;
		}
	}

	// Set Content-Type if we don't have a content-type from the input headers.
	if ( ! isset( $content_type ) ) {
		$content_type = 'text/plain';
	}

	/** This filter is documented in wp-includes/pluggable.php */
	$content_type = apply_filters( 'wp_mail_content_type', $content_type );

	if ( 'text/html' === $content_type ) {
		$mail['message'] = wp_staticize_emoji( $mail['message'] );
	}

	return $mail;
}

/**
 * Returns a arrays of emoji data.
 *
 * These arrays automatically built from the regex in twemoji.js - if they need to be updated,
 * you should update the regex there, then run the `grunt precommit:emoji` job.
 *
 * @since 4.9.0
...
wp_mail_content_type Комментариев нет

    Здравствуйте, !

    Ваш комментарий
    Предпросмотр