Wordpress und Sape — проблема с кодировкой

Рубрики: WordPress |

Недавно столкнулся с тем, что на одном из блогов ссылки из Sape выводились знаками ЪЪЪЪЪЪ. В FAQ-е Сапы сказано, что при установке на ВП стандартный код нужно дополнить указанием, что используется кодировка utf-8:

<?php
define('_SAPE_USER', 'ххххххххххххххххххххххххххх');
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$o['charset'] = 'UTF-8';
$sape = new SAPE_client($o);
unset($o);
echo $sape->return_links();
?>

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

Покопавшись в весьма внушительном топике по данной теме на форуме самой Сапы, нашел таки работающий вариант. В нем используется перекодировка с windows-1251 (которая и выдает кракозябры) на utf-8. В конечном итоге, код будет выглядеть так:

<?php
define('_SAPE_USER', ' ххххххххххххххххххххххххххх ');
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$o['charset'] = 'windows-1251';
$sape = new SAPE_client();
echo mb_convert_encoding($sape->return_links(), "UTF-8", "CP1251");
unset($o);
?>

Возможно, это кому-то так же поможет.

Вебсовет

Комментарии (8) на запись “Wordpress und Sape — проблема с кодировкой”

  1. Marina 05.11.2008 16:23

    Простите, что не совсем по теме..
    Пожалуйста будьте добры, подскажите на примере, что именно должно быть написано в поле require_once($_SERVER[’DOCUMENT_ROOT’] вместо DOCUMENT ROOT ?
    Я вчера подставляла массу вариантов, но код так и не стал работать :( Правда, он был не саповский, но строчка там такая же.
    Просто у Вас увидела знакомые слова и решила спросить, Вы, скорее всего, разбираетесь и поможете. Объяснять это где-нибудь на форуме - выше моих сил. А рядом никого кто-бы разбирался в этих тонкостях :(
    Заранее спасибо.

  2. Zodios 05.11.2008 17:25

    А как установить сапу именно на какую-то отдельную страницу? Я имею в виду что если код сапы добавлять в темплейт он ведь сквозняком пойдет по всему сайту?

  3. Zodios 05.11.2008 17:26

    Добавлять код в страницу при написании поста?

  4. Игорь Квентор 05.11.2008 18:39

    Marina, а зачем вам менять эту запись? Она ведет в корень сайта, путь к которому может выглядеть примерно как:
    ../usr/local/apache/htdocs/www/ваш_файл.php
    Не зная точного пути, невозможно подставить нужный адрес.
    А код не работает совсем по другой причине. Но не зная, о чем речь, увы поспособствовать не могу :)

    Zodios, код Сапы как раз и ставят в шаблон (в подвале или сайдбаре), чтобы он шел через весь сайт. Если вам нужно исключить какие-то страницы, то вы сможете сделать это в своем аккаунте в Сапе, удалив эти страницы из списка, найденного роботом.

  5. Marina 05.11.2008 19:28

    То есть эти слова Document Root вообще не надо заменять указанием пути? Вот я балда. Как есть блондинка. :(
    Я решила, что словосочетание ‘DOCUMENT ROOT’ написано для образца, а вместо него надо подставить свой путь. Прошу прощения за ламерский вопрос. Можете удалить оба коммента, если хотите.
    Спасибо за ответ. :)

  6. Игорь Квентор 05.11.2008 19:54

    Не за что! :) Если вы не против, то пусть комменты сохранятся. Может это кому-нить будет полезно.

  7. andryxa 15.11.2008 14:44

    Автор спасибо большое нашел твой блог с гугла, и как раз уже долго искал как нормально установить этот долбаный код сапе. СПАСИБО, СПАСИБО, СПАСИБО. БОЛЬШОЕ!

  8. Студент 24.11.2008 05:58

    Zodios, просто скачайте плагин “execphp” сможете сапу в виджеты ставить и по блокам раскидывать без лишнего гемороя

Трэкбеки

Оставить комментарий




Поиск

Рубрики

Архив



SMS.копилка

Пузомерки


PageRank





Blog Catalog

DMOZ

Каталог дизайнерских блогов