函数文档

wp_enqueue_emoji_styles()

💡 云策文档标注

概述

wp_enqueue_emoji_styles() 函数用于在 WordPress 中加载表情符号相关的关键 CSS 样式,确保表情图标正确显示。它通过注册和内联样式的方式,替代了旧的 print_emoji_styles 动作,提供向后兼容性。

关键要点

  • 函数 wp_enqueue_emoji_styles() 在 WordPress 6.4.0 版本引入,用于加载表情符号样式。
  • 它检查是否有 print_emoji_styles 动作被挂载,若无则直接返回,确保向后兼容。
  • 通过 wp_register_style()、wp_add_inline_style() 和 wp_enqueue_style() 注册并内联 CSS 样式。
  • 样式针对 img.wp-smiley 和 img.emoji 类,设置显示、尺寸、边距等属性,使用 !important 确保优先级。
  • 相关函数包括 wp_register_style()、wp_add_inline_style()、wp_enqueue_style()、has_action()、remove_action() 和 is_admin()。

代码示例

function wp_enqueue_emoji_styles() {
    // Back-compat for plugins that disable functionality by unhooking this action.
    $action = is_admin() ? 'admin_print_styles' : 'wp_print_styles';
    if ( ! has_action( $action, 'print_emoji_styles' ) ) {
        return;
    }
    remove_action( $action, 'print_emoji_styles' );

    $emoji_styles = '
    img.wp-smiley, img.emoji {
        display: inline !important;
        border: none !important;
        box-shadow: none !important;
        height: 1em !important;
        width: 1em !important;
        margin: 0 0.07em !important;
        vertical-align: -0.1em !important;
        background: none !important;
        padding: 0 !important;
    }';
    $handle       = 'wp-emoji-styles';
    wp_register_style( $handle, false );
    wp_add_inline_style( $handle, $emoji_styles );
    wp_enqueue_style( $handle );
}

📄 原文内容

Enqueues the important emoji-related styles.

Source

function wp_enqueue_emoji_styles() {
	// Back-compat for plugins that disable functionality by unhooking this action.
	$action = is_admin() ? 'admin_print_styles' : 'wp_print_styles';
	if ( ! has_action( $action, 'print_emoji_styles' ) ) {
		return;
	}
	remove_action( $action, 'print_emoji_styles' );

	$emoji_styles = '
	img.wp-smiley, img.emoji {
		display: inline !important;
		border: none !important;
		box-shadow: none !important;
		height: 1em !important;
		width: 1em !important;
		margin: 0 0.07em !important;
		vertical-align: -0.1em !important;
		background: none !important;
		padding: 0 !important;
	}';
	$handle       = 'wp-emoji-styles';
	wp_register_style( $handle, false );
	wp_add_inline_style( $handle, $emoji_styles );
	wp_enqueue_style( $handle );
}

Changelog

Version Description
6.4.0 Introduced.