Существует ли элегантное решение следующей проблемы?

табуретка
На сайте с 02.10.2007
Offline
96
543

В шаблоне Wordpress использована устаревшая функция обработки строк, которая неправильно работает с кириллицей и азиатскими кодировками. В итоге в комментариях заголовок темы обрезывается непонятными символами.

Говорят, что это решаемо заменой некоторых строк в php-скриптах темы, но это более чем 200 файлов. Шаблон очень нравится, не хочеться ставит другой.

Есть ли какое-то более элегантное решение проблемы с кодировкой?

Партнерка AirBNB (www.airbnb.ru/c/erzhenab?s=8) платит за мои путешествия. Вы тоже так можете.
R
На сайте с 04.11.2005
Offline
113
#1

табуретка, извините, я не понял - шаблон темы состоит из 200 файлов?

ps только что посмотрел - дефолтная тема "кубриковская" состоит из 17 php-файлов.

Z-Den
На сайте с 30.06.2007
Offline
25
#2

Сталкивался с такой проблемой. Старая функция обработки строк не в файле шаблона, а в файле самого вордпреса. и от шаблона это не зависит.

Решал проблему именно заменой пары строк в одном файле. Сайчас навскидку, не вспомню что за строки и в каком файле.

Вспомнил

Файл wp-includes/gettext.php

строку 117

if ($magic == ($MAGIC1 & 0xFFFFFFFF) || $magic == ($MAGIC3 & 0xFFFFFFFF)) { // to make sure it works for 64-bit platforms

заменяем на

if ($magic == $MAGIC1 || $magic == $MAGIC3) { // to make sure it works for 64-bit platforms

Должно помочь. Попробуй

табуретка
На сайте с 02.10.2007
Offline
96
#3
Z-Den:
Сталкивался с такой проблемой. Старая функция обработки строк не в файле шаблона, а в файле самого вордпреса. и от шаблона это не зависит.
Решал проблему именно заменой пары строк в одном файле. Сайчас навскидку, не вспомню что за строки и в каком файле.

Вспомнил
Файл wp-includes/gettext.php
строку 117
if ($magic == ($MAGIC1 & 0xFFFFFFFF) || $magic == ($MAGIC3 & 0xFFFFFFFF)) { // to make sure it works for 64-bit platforms
заменяем на
if ($magic == $MAGIC1 || $magic == $MAGIC3) { // to make sure it works for 64-bit platforms


Должно помочь. Попробуй

ок. спасибо.

попробую и сообщу

табуретка
На сайте с 02.10.2007
Offline
96
#4

Z-Den, к сожалению, ваш способ не помог. В любом случае, спасибо. Помогло, как объяснил администратор, "substring поменять на mb_substring".

Вдруг полезно будет кому-то.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий