Поддержка Проблемы и решения слетела кодировка после переезда на новый хостинг

  • Добрый день, всем,

    подскажите плз процедуру восстановления кодировки.

    Ситуация следующая — перенес сайт с одного хостинга на другой, версия движка одна и та же, темы тоже, пользовался плагином All in ONE Migration. Обычно он срабатывал без вопросов, а здесь вот слетела кодировка.

    Смотрел здесь на сайте Вопросы и ответы по кодировке, пробовал добавлять строку в .htaccess, не помогло.

    Написал хостеру, он ответил, что «Проблема возникла из-за несоответствия кодировки, используемой в файлах сайта и кодировки базы данных.» И что дальше уже не его дело.

    И последняя деталь, когда сайт создавался, несколько лет назад, то смутно помню, что были какие-то проблемы с кодировками, но что именно уже не вспомнить.

    В общем, как проверить и поправить эти кодировки? Какой общий алгоритм действий?

Просмотр 7 ответов — с 1 по 7 (всего 7)
  • Модератор Yui

    (@fierevere)

    ゆい

    http://codex.wordpress.org/Editing_wp-config.php#Database_collation

    вам нужно установить DB_COLLATE в значение используемое на вашем предыдущем хосте

    если там значение было latin1 , то

    define( ‘DB_COLLATE’, ‘latin1_swedish_ci’ );

    спасибо за подсказку,

    но там, на предыдущем хосте, было немного иначе, а именно

    define('DB_CHARSET', 'cp1251');
    define('DB_COLLATE', '');

    В итоге на новом хосте тоже поставил

    define('DB_CHARSET', 'cp1251');

    Все тексты стали в норме, но при этом слетели виджеты. И поскольку их там много, то задачка получается не простая.

    Нет ли способа побороться и с виджетами?

    да ставьте везде UTF8 — а дамп базы откройте в NotePad++ и тупо ее переконвертируйте в UTF8, а потом импортнете ее в правильной кодировке. использовать на данный момент любую кодировку кроме UTF8 крайне неразумно.

    в принципе да, единственное, что у меня Mac, не подскажет кто с ходу какой на нем можно использовать редактор?

    сделал все по алгоритму — экспорт базы — конвертация без BOM в UTF-8 — импорт через PHP MyAdmin

    Выдает такую ошибку

    Ошибка
    SQL запрос:

    INSERT INTOwp_commentmetaVALUES (108917, 37047, 'akismet_history', 'a:4:{s:4:"time";d:1411413789.4206120967864990234375;s:7:"message";s:35:"Akismet caught this comment as spam";s:5:"event";s:10:"check-spam";s:4:"user";s:0:"";}');

    Ответ MySQL:
    #1062 - Duplicate entry '108917' for key 'PRIMARY'
    Как с ней побороться?

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

    Вопрос закрыт.

    Единственное странно, что поменял пароль на вход в админку вордпресса, но в базе в PHP MyAdmin он так и не показывается, выводит старый, хотя вхожу уже по новому.

    блин, сглазил, админка перестала реагировать на пароль, что здесь может быть за причина?

Просмотр 7 ответов — с 1 по 7 (всего 7)
  • Тема «слетела кодировка после переезда на новый хостинг» закрыта для новых ответов.