Глюк WordPress с UTF8

После обносления WordPress до версии 2.8 в панели управления стал появляться лишний символ в тайтле (сразу перед троеточием) и в ленте блогов:

utf8

Разобраться в чем проблема оказалось совсем несложно. Взяли заголовок, который выводится файлом wp-admin/admin-header.php. Немного покопавшись в коде, мы с Владимиром нашли строку где выводится заголовок

 $blog_name_excerpt = wp_html_excerpt($blog_name, 40);

и опытным путем, заменив её на аналогичную, написанную руками:

 $blog_name_excerpt = mb_substr($blog_name,0,27,'UTF-8');

выяснили, что всё дело в функции wp_html_excerpt, которая неправильно отображает символы UTF-8 – вероятно, используя для обрезания количества символов substr вместо рекоммендуемого при работе с UTF-8 mb_substr.

Оформил тикет, отправил разработчикам и еще до того как у меня дошли руки написать этот пост последняя версия все исправила! Оперативность впечатляет и удивляет! =)

Назад Вперед

Оставить комментарий