Регулярно появляется такая проблема на разных браузерах, разных компьютерах, разных ОС и нескольких провайдерах. Самое интересное, что через какое-то время все эмодзи отображаются корректно. Затем, проблема возникает вновь. Логики не вижу.
Собственно, на этом сайте сейчас тоже у меня есть проблемы (как и на своем) с отображением эмодзи (FireFox, win 10)
Даже не знаю, за что мне так повезло, эмодзи всегда отображались нормально, но Владимир верно указал на то, куда надо смотреть в первую очередь, во вкладку Network браузера, а именно на запросы, которые отправляются по адресу
Какой ответ у этих запросов? Например, у меня 200
Беда в том что у вас они как символы. У кого работают - они картинки
Почему механизм отрабатывает не у всех - вопрос наверно к разрабам вордпресс. Я тут ничего нового не изобретал - беру эмодзи и в массив смайлов его вставляю. Дальше уже вордпресс парсит их скриптом из ядра и посылает запрос на sworg получая для каждого картинку
Вот, например, что мне возвращает МОЙ сервер при запросе смайлов:
array(22) { [0]=> string(4) "😉" [1]=> string(4) "😐" [2]=> string(4) "😡" [3]=> string(4) "😈" [4]=> string(4) "🙂" [5]=> string(4) "😯" [6]=> string(4) "🙁" [7]=> string(4) "🙄" [8]=> string(4) "😛" [9]=> string(4) "😳" [10]=> string(4) "😮" [11]=> string(142) "<img src="http://wppreci.ru/wp-includes/images/smilies/mrgreen.png" alt=":mrgreen:" class="wp-smiley" style="height: 1em; max-height: 1em;" />" [12]=> string(4) "😆" [13]=> string(4) "💡" [14]=> string(4) "😀" [15]=> string(4) "👿" [16]=> string(4) "😥" [17]=> string(4) "😎" [18]=> string(3) "➡" [19]=> string(4) "😕" [20]=> string(3) "❓" [21]=> string(3) "❗" }
т.е. функция convert_smilies какие-то смайлы конвертит, какие то нет
rcl_get_smiles_ajax вызывает convert_smilies а вот там что-то неладное происходит.
Но для меня загадка - почему не серверная работа происходит, а именно что-то на клиенте не так отрабатывает. Иначе мы бы все видели кодеселлер эмодзи как вы. В чем отличия и почему скрипт twemoji ведет себя по разному - вот вопрос...
Артём - так же тоже отработает у тебя?
var sm = document.getElementsByClassName('smiles'); twemoji.parse(sm);
быстрей будет чем рендерить весь документ
только это у меня в консоли ошибку генерит. Но суть понятна - надо определить не весь документ - а именно див где производить релоад