MaxSite CMS - бесплатный «движок» вашего сайта! Легкая, мощная и надежная CMS - система управления сайтом. Никаких тормозов!

Исправление ошибки добавления новой рубрики

25 ноября 2006 г. Просмотров: 6782 RSS Обсудить
WordPress » Уязвимости WordPress

Данную ошибку обнаружил Тарас. Я не сразу сообразил, каким образом она появляется.

Всё дело в том, что новую рубрику в WordPress можно создать не только через отдельную закладку «Рубрики», но и прямо при редактировании записи: достаточно ввести название рубрики (или рубрик через запятую) и нажать кнопку «Добавить».

При таком способе рубрика действительно добавляется и сразу же становится доступна. Однако, на самом деле в базу данных добавляется название рубрики в кодировке UTF-8. В этом легко убедиться просто обновив страницу или перейдя в закладку «Рубрики».

Ошибка кроется в том, что в AJAX данные передаются в кодировке UTF-8. Следовательно, необходимо конвертировать их в кодировку блога. Естественно, если ваш блог работает в UTF-8, то никакие исправления вносить не требуется.

Я использовал точно такое-же решение, что предложил Тарас, только сделал его более универсальным за счет проверки кодировки блога и наличия на сервере функций преобразований.

Если у вас WordPress версий 2.0.4 или 2.0.5 в кодировке Windows-1251, то вам достаточно скачать архив и заменить предложенные файлы.

http://maxsite.org/wp-files/wp204-205-pack03-win1251.zip Исправление ошибки добавления рубрик


twitter.com facebook.com vkontakte.ru odnoklassniki.ru mail.ru friendfeed.com google.com yandex.ru
Оставьте комментарий!

grin LOL cheese smile wink smirk rolleyes confused surprised big surprise tongue laugh tongue rolleye tongue wink raspberry blank stare long face ohh grrr gulp oh oh downer red face sick shut eye hmmm mad angry zipper kiss shock cool smile cool smirk cool grin cool hmm cool mad cool cheese vampire snake excaim question

Используйте нормальные имена

Имя и сайт используются только при регистрации

Зарегистрируйтесь, чтобы получать уведомления о новых комментариях по email.

Авторизация Войти через loginza

(обязательно)