WordPress – мату «НЕТ»

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

Причина сему «wordpress кодировка». Если говорит просто это специальная таблица, в которой описан каждый символ (буква). Куда компьютер заглядывает, что бы понять, как ему правильно отобразить букву. И если он неправильно определил, с какой таблицей сверяться, то обычно вы видите кракозабляки вместо букв.

Например, Microsoft Windows использует для отображения русских букв кодировку — «cp1251». Для wordpress родной кодировкой есть – UTF8 – которая дружит и с русскими символами.

Сразу слышу гул, тоже мне открыл секрет – ты лучше помоги исправить. Так и сделаю, и если не всем смогу помочь, то надеюсь что многим. Себе помог!

Первым делом начнем с основ. Скачав wordpress, тему к нему, плагин. А потом решили внести в них какие-то изменения вам нужно позаботиться, что бы ваш «скальпель» (программа, через которую вы будете вносить изменения) поддерживала кодировку «UTF8 без BOM».

Обычным блокнотом не резать, а то пациент умрет – Шутка. Но не далекая от правды.

Я использую «Notepad ++». Он поддерживает вкладки, подсвечивает синтаксис, видит границы блоков и позволяет их сворачивать, а главное умеет конвертировать в «UTF8 без BOM».

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

1. В тех файлах, где что-то меняли, открываем их по очереди в «Notepad ++». Нажимаем на меню «Кодировки» и там выбираем «Преобразовать в UTF8 без BOM». Проверяем, помогло? Если нет продолжаем.

2. Теперь нужно залезть в базу данных. Откройте phpmyadmin, потом выберите вашу базу данных, на которой работает wordpress. Нажмите на вкладке «структура». Кодировка таблиц должна быть «utf8_general_ci».
Если нет, нужно сделать дамп базы данных. Либо через «phpmyadmin» либо использовать плагин «WordPress Database Backup». Я пользуюсь плагином.

Делаем дамп базы данных. Потом ручками меняем ту кодировку, что у вас стоит на «utf8_general_ci». Потом заливаем дамп обратно.

Проверяем: помогло? Если нет продолжим.

Дальше вам нужно облазить и выявить, где же кроиться пакость. Уже слышу ответ: «Вроде все проверил», «У меня нет нужных знаний».

Тогда возьмем хитростью. Мы заставим Apache принудительно преобразовывать текст в «utf8». Но для этого ваш хостинг провайдер должен предоставлять вам возможность редактировать файл «htacess».

3. Заходим в корневую папку вашего блога. Ищем файл «htacess». Открываем его и пишем «AddDefaultCharset UTF-8» (без скобок).

Мы дали ему команду преобразовывать кодировку в utf8.

Обычно этого достаточно. Если нет, можно попробовать дописать следующие строки:

CharsetDisable On
CharsetDefault UTF-8
CharsetSourceEnc UTF-8

Надеюсь, эта статься вам помогла. Удачи!!! С уважением Тригуба Сергей

Блог стал обузой. Узнай, как заработать на блоге!

Автор: Тригуба Сергей
Tweet
Нравится
Приглашаю присоединиться ко мне в следующих сервисах:
Присоединится ко мне в twitter
Присоединится ко мне в Вконктакте
Присоединится ко мне в Facebook
Присоединится ко мне в Google plus

Мои групы:

Получайте новые статьи по созданию сайтов на ваш почтовый ящик.

Комментарии Вконтакте:

Комментарии Facebook:

Комментариев (22)

Сергей, можно Вас спросить, никак не могу разобраться с связанной с кодировкой проблемой, дело в том, что если ссылку на мой блог (адрес его я указал) опубликовать в любой социальной сети (например на стене вконтакте или facebook), когда соц. сеть автоматически частично загружает информацию по ссылке, вместо текста выводятся кракозябы, может быть Вы сталкивались с такой проблемой?

    Часто такая проблема бывает связана если в тексте ссылки есть спецсимволы. Например: несколько тире вподряд.

    Google chrome сразу будет ее кодировать.

    Попробуйте проверить в разных браузерах. Например Opera, она обычно лояльна к таким проблемам.

Мне посоветовали пересохранить (перекодировать) все файлы шаблона в UTF-8, что я и сделал при помощи программы dreamweaver 8, проблема практически полностью решилась, осталась лишь проблема с facebook, он по-прежнему выдаёт каракули...

Про notepad ++ я тоже читал, многие рекомендуют, но в целом задача по перекодировке выполнена, а в Facebook всё равно кракозябы... :(

Да, у меня блог на движке wordpress

    C этого сразу надо было начинать.

    Значит, еще раз нужно выполнить перекодировку.

    Скачиваешь notepad++. Открываешь каждый файл темы и сверху в notepad++ выбираешь “кодировки” – «преобразовать в UTF-8 (без BOM)» и сохраняешь и заливаешь на сервер.

    Проблема должна пропасть.

      Лилия
      3.2

      Здравствуйте!

      У меня такая же проблема с отображением WP в социальных сетях. Причем происходит это только в одной теме, в других выглядит нормально. Значит, я так понимаю, проблема именно с кодировкой файлов. Я скачала Notepad++, сделала так, как у вас описано, но происходит странная вещь, я меняю кодировку, сохраняю, потом, когда открываю файл еще раз, там опять прежняя кодировка...

        Откройте все файлы темы и в каждом файле зделайте следующее:

        кодировка — преобразовать в utf8 без bom и сохранить.

        Проблема должна пропасть.

Действительно, получилось, похоже что Notepad++ для этих целей идеально подходит, а Дрим8 подвёл получается...

Спасибо огромное, так давно эта проблемка висела, наконец-то всё в порядке!

Господа подскажите пожалуйста, если проблема не в utf8 with bom, то в чем еще может быть дело,

проверял с помощью этого скрипта

Спасибо Уважаемый, да — это ясно из статьи:

«Делаем дамп базы данных. Потом ручками меняем ту кодировку, что у вас стоит на «utf8_general_ci». Потом заливаем дамп обратно»

Стояла «latin1_swedish_ci» дамп базы сделал, кодировку сменил на «utf8_general_ci», а вот с последним пунктом не до конца ясно, — как правильно залить обратно?

Заранее спасибо!

multminder
7

Тут была подобная проблема- добавил в

htacess -> AddDefaultCharset UTF-8

Сайт стал отображаться нормально, зато письма от движка стали кракозябликами в неверной кодировке! Как поправить сию неприятность?

    Что за движок?

      Игорь Multiminder
      7.2

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

      Здесь больше всего проблема в кодировке файла после сохранения. Скачайте notepad ++ и сохраните в кодировке без BOM

Бетке Сергей Сергеевич
8

На самом деле есть ещё ряд проблем в wordpress с кодировкой. Проявляются в админке, XMLRPC и AJAX. Пока нашёл 3 ошибки в php коде wordpress, рецепты по ним привёл в своей статье.

9

спасибо большое за статью!

первый пункт сразу же решил проблему. )

Сергей
10

Супер! Спасибо! помогло: Преобразовать в UTF8 без BOM

фууу, гора с плеч

Ответить

Написать ответ

Получай обновления блога первым!
  • RSS
    RSS-Подписка
  • Twitter
    Twitter
Каталог@Mail.ru - каталог ресурсов интернет