wp_encode_emoji() WP 4.2.0

Конвертує емодзи (emoji) символи в переданому рядку в їх HTML код ( ).

Емодзі (emoji) – це загальноприйняті (що мають специфікацію та підтримуються багатьма пристроями) картинки-смайли в кодуванні utf-8mb4, введені в WordPress з версії 4.2. Наприклад: ???? ???? ❄.

На квітень 2015 року підтримуються не всі смайлики і для відображення смайлів, що не розпізнаються, в браузері, використовується спеціальний скрипт.

Такі символи-смайлики потребують спеціального кодування utf8mb4при розміщенні їх у БД, інакше символ не буде розпізнаний і не збережеться правильно. Конвертація за допомогою wp_encode_emoji() дозволяє зберігати ці символи в непридатному для них кодуванні utf8, де вони зберігаються не як символи, а як відповідний код.

Кодування utf-8 саме собою підтримує деякі з іконок эмодзи, але далеко ще не все.

Хуків немає.

Повертає

Строку. Рядок, в якому символи-смайли замінені на відповідні HTML сутності.

Використання

wp_encode_emoji($content);
$content
(рядок) (обов’язковий)
Рядок, символи в якому потрібно замінити.

Приклади

#1 Демонстрація заміни символів-смайликів у рядку на HTML сутності

$str = '???? ???? ???? ❄ ????';

$str = wp_encode_emoji($str);

// $str тепер дорівнює:    ❄ 

список змін

З версії 4.2.0Введено.

Код wp_encode_emoji() WP 6.0.2

function wp_encode_emoji( $content ) {
	$emoji = _wp_emoji_list( 'partials' );

	foreach ( $emoji as $emojum ) {
		$ emoji_char = html_entity_decode ($ emojum);
		if ( false !== strpos( $content, $emoji_char ) ) {
			$content = preg_replace( "/$emoji_char/", $emojum, $content);
		}
	}

	return $content;
}