Думаю, есть немало желающих установить на свой блог на вордпрессе сейп, дабы заработать много бабла. Так же почти все знают, а остальные должны догадываться, что вордпресс работает в кодировке utf-8 (unicode). И вот тут то и ждет засада. Правда засада ждет не всех, а, например, клиетов мастерхоста.
Чтобы подключить сейп к вордпрессу, достаточно в футер или где вы там хотите выводить ссылки, подключить сейповский код с указанием кодировки. Что-то типа того:
$o=array();
$o['charset'] = 'UTF-8';
$sape = new SAPE_client($o);
Этот кода будет выводить ссылки, проданные через сейп в кодировке utf-8 (как и весь контент на блоге). В принципе , есть извращенцы, которые пытаются пользовать вордпресс с кодировкой cp1251, но они сами себе злобные дендромутанты.
Так собственно в чем подвох-то? А подвох в том, что кодировка в заголовках, которые отдает сервер, и в мете в теле документа должны точно совпадать. Иначе ссылки будут на сайте выглядеть как и должны быть, а сейп постоянно будет выдавать error.
Я долго не мог понять в чем проблема, когда с ней столкнулся, но моск все-таки дан не зря. Выяснилось, что в мета была прописана кодировка iso-8что-то там. Это раз. А сервер выдавал заголовок
Content-type: text/html; encoding="utf-8"; charset="windows-1251"
Чтобы посмотреть заголовки ответа сервера, я использую плагин Web Developer Toolbar для мозилы. Там в закладке information->view response headers.
Как при таком раскладе блог вообще работал, точнее правильно отображался в браузерах — загадка очень интересная.
Собственно, чтобы сейп работал на вордпрессе правильно, нужно убедиться в 3х моментах:
- Код сейпа вызывается с указанием кодировки utf-8 (см. пример выше);
- В мете прописана правильная кодировка utf-8;
- Сервер выдает правильные заголовок о том, что кодировка utf-8;
В мете должна быть следующая строка:
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
А сервер должен выдавать такой заголовок:
Content-Type: text/html; charset=UTF-8
Если он выдает другой, то нужно в хидер засунуть такую строчку в самое начало:
<?Header("Content-type: text/html; charset=UTF-8")?>
Если вы ничего не поняли, то вам это и не надо.
зы.
Один интересный человек, гламурный фотограф-падонак, тоже завел себе блог: http://www.igoralekseev.com/blog/. Рекомендую. Много шикарных фоток и полезной информации о фотографии. Continue reading →