Faq по установке кода sape на wordpress

20 Июнь 2008 | Автор: Virtual

Сегодня помогал человеку установить на wordpress, в итоге написал мини-faq. Но чтобы добро не пропадало решил опубликовать данную информацию на блоге, поскольку многие новички сталкиваются с различными проблемами при установке кода.

В есть 2 вида ссылок: обычные и  контекстные. Обычные – это ссылки которые можно разместить где угодно: в “подвале”, в боковой колонке… Контекстные – это ссылки размещающиеся прямо в тексте.

1) Для установки обычных ссылок требуется авторизироваться, перейти по ссылке , нажать на  Для хостинга с поддержкой PHP, там будет предложено скачать архив. Вы должны будете его скачать и выполнить то, что написано в пунктах 2,3 и 4:

  1. Распакуйте архив. Внутри архива будет лежать папка “название папки”.
  2. Скопируйте эту папку к себе на сайт. Положите ее в корень вашего сайта.
  3. Выставите права доступа 777 на эту папку (но не на файл sape.php), чтобы наш php-клиент мог управлять файлом с базой ссылок.

Далее в файл header.php между тегами </head> и <body> добавить код:

<?php
global $sape;
if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'секретный код');
}
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$o['charset'] = 'UTF-8';
$sape = new SAPE_client($o);
unset($o);
?>

Далее в местах, где вы планируете выводить ссылки необходимо добавить код:

<?php
global $sape;
echo $sape->return_links($$);
?>

где $$ – количество ссылок, которое вы хотели бы вывести в данном месте страницы.

Последний вызов этой функции в документе обязательно должен производиться без параметров, т.е. если у вас ссылки будут выводиться в 2-х местах, то в первом месте вам необходимо указать сколько там должно быть ссылок, а во втором указывать их число не требуется, количество ссылок там определится в зависимости от количества ссылок указанных в настройках площадки, например если вы в коде в сайтбаре укажите 2 ссылки, а в настройках площадки 5, то в подвале будет 3 ссылки.

Но если в вашем шаблоне используются виджеты, и вы ими пользуетесь, то в коде файла sidebar.php будет код:

<?php if ( function_exists('dynamic_sidebar') && dynamic_sidebar() ) : else : ?>

<?php if(is_home()) {?>

и

<?php endif; ?>

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

<?php
global $sape;
echo $sape->return_links($$);
?>

вам необходимо размещать либо до

<?php if ( function_exists('dynamic_sidebar') && dynamic_sidebar() ) : else : ?>

<?php if(is_home()) {?>

либо после

<?php endif; ?>

2) Для установки контекстных ссылок в файле header.php между тегами </head> и <body> необходимо поместить код:

<?php
if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'секретный код');
}
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$sape_context = new SAPE_context();
ob_start(array(&$sape_context,'replace_in_page'));
?>

Далее,  в файле single.php необходимо найти

<?php the_content('здесь может быть код или текст, его не трогать'); ?>

найдя данную функцию (она выводит текст) перед ней необходимо поставить тег <sape_index> а после данной функции тег </sape_index>

выглядеть это будет так:

<sape_index><?php the_content('здесь может быть код или текст, его не трогать'); ?></sape_index>

тоже самое необходимо сделать и в файле page.php, т.е. там также нужно найти <?php the_content('здесь может быть код или текст, его не трогать'); ?>

и с обоих сторон добавить теги <sape_index> и </sape_index>

Вот и все. Ну а если у вас возниукнут какие-либо проблемы, то вы можете обратиться ко мне в асю.

___________________________________________________

Спонсор записи:
Разработка сайта в Киеве


Комментарии (27) »


  1. Полезное из блогов…


  2. кавычки неправильно…поправь в кодировке


  3. а нет. все ок)) извините.


  4. Попыталась установить код для контекстных ссылок.

    Вот, что получилось:

    Warning: Division by zero in /hdd1/home/c003161/domains/lessonsofpsychology.ru/public_html/wp-content/themes/Thesky/header.php on line 23

    Warning: Division by zero in /hdd1/home/c003161/domains/lessonsofpsychology.ru/public_html/wp-content/themes/Thesky/header.php on line 23

    Warning: require_once(/home/c003161/domains/lessonsofpsychology.ru/public_html8b9fc29bf8ba0ec9537c14c9cac7132fphp’) [function.require-once]: failed to open stream: No such file or directory in /hdd1/home/c003161/domains/lessonsofpsychology.ru/public_html/wp-content/themes/Thesky/header.php on line 23

    Fatal error: require_once() [function.require]: Failed opening required ‘/home/c003161/domains/lessonsofpsychology.ru/public_html8b9fc29bf8ba0ec9537c14c9cac7132fphp’’ (include_path=’.:/usr/local/lib/php’) in /hdd1/home/c003161/domains/lessonsofpsychology.ru/public_html/wp-content/themes/Thesky/header.php on line 23

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

    Спасибо!


  5. Может дело в том, что у меня уже установлен код для вывода обычных ссылок и они не совмещаются?


  6. Мила, вы это сделали?

    Важно: Если ранее у вас уже был установлен код для отображения обычных ссылок, то вам следует заменить в нем строчку кода кода:

    define(‘_SAPE_USER’, ‘c1b1dd04e209827453a12dde1ef31bc3′);

    ,на

    if (!defined(‘_SAPE_USER’)){
    define(‘_SAPE_USER’, ‘c1b1dd04e209827453a12dde1ef31bc3′);
    }


  7. Заменила.
    Теперь вылазит ошибка:
    Parse error: syntax error, unexpected T_STRING in /hdd1/home/c003161/domains/lessonsofpsychology.ru/public_html/wp-content/themes/Thesky/header.php on line 20

    Что делать?
    От чего это зависит, никак не пойму.


  8. Мила, я не телепат, чтобы понять какой код у вас в 20 строчке файла header.php


  9. Может я не правильно заменила.
    В каком файле нужно заменить:
    В header.php или в том, где код вывода обычных, не текстовых ссылок (single.php)?


  10. Мила, на сайте сапы есть подробная инструкция, если делать все как там написано, то будет все норм.


  11. Методом тыка выяснила, что ошибки появляются, если
    в файле header.php между тегами и поместить код.
    Нельзя ли его поставить куда-нибудь в другое место?


  12. >между тегами и поместить код
    Между какими тегами? И какой код?


  13. Тот, который в вашем посте в пункте 1:

    Далее цитата:
    "Далее в файл header.php между тегами и добавить код:

    А также тот, который в пункте 2.
    Любой из них, помещенный так как вы рекомендуете, вызывает ошибки.


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


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


  16. Спасибо за инструкцию! Из того, что я нашел, эта самая понятная и подробная.

    Но все равно установить не получается. Вроде все делаю, как надо, но при попытке проверить результат, как это описано на сайте у Сапе:

    —————————————–
    $sape = new SAPE_client(); изменить на:
    $o['force_show_code'] = true;
    $sape = new SAPE_client($o); )
    —————————————-
    ничего не происходит. Хотя должно “При корректной установке кода вы увидите закомментированное число или строку в коде страницы, в том месте, где вы хотите размещать ссылки из SAPE.
    :sad:

    Третий день вожусь, не могу разобраться… Я в php совсем новичек, помогите, пожалуйста!!!


  17. На сайте Sape написана немного не тот код. Нужно использовать следующий код для блогов WordPress:

    return_links(), “UTF-8″, “CP1251″);
    ?>

    Это нужно потому-что файл links отдается в кодировке windows-1251. А его нужно перекодировать в UTF-8. Без этого на сайте будут отображаться ссылки в кроказябре.


  18. Сам разобрался может и другим поможет. Если у вас ошибки типа как описывает мила. Чаще всего проблема кроется именно в кавычках. В посту в строчке ($_SERVER['DOCUMENT_ROOT'].’/’._SAPE_USER.’/sape.php’); кавычки косые! НО не все версии интерпритаторов php их правильно воспринимают поэтому и вылазит типа Warning: require_once(/home/c003161/domains/lessonsofpsychology.ru/public_html !сдесь должен быть слэш!8b9fc29bf8ba0ec9537c14c9cac7132fphp интерпритатор просто не понял что за косые кавычки и не вывел их Отсюда выход – попробуйте заменить косые кавычки на прямые


  19. Сделал все как описано выше. Обычные ссылки у меня отображаются и
    работают нормально. А вот с контекстными проблема: после первой же
    плановой их проверки сапой выпадают в эррор: ссылка не найдена на странице или размещена вне тегов «body» или «html»
    Сайт работает на WP 2.8.5
    В чем может быть проблема? Подскажите, пожалуйста!
    Мы так же используем плагины WP No External Links и RC Link
    Redirector. Но и после их отключения контекстные ссылки остаются в эрроре.
    Пробовали подключить дополнительно плагин MaxSite Sape 0.4, но безрезультатно …


  20. День добрый. Помогите советом, плизззз. Из-за чего могут не отображаться ссылки на странице. Уже третий день насилую мозги себе и людям на пяти форумах. Вразумительных ответов пока нет.
    В Сапе зарегистрировался через плагин iSape. Захожу в тестовом режиме на сайт: Сапа-мои площадки-ссылки-страница,- тогда я вижу проданную и установленную ссылку. А если просто захожу на сайт, – ссылок нет. Менял плагин на iMoney и еще один ставил – ничего не меняется: через Сапу я вижу ссылки, а войдя на сайт их нет.
    Самое смешное, что и при ручной установке кода результат аналогичен. Через Сапу ссылки видно, а так нет. Шаблон? У меня два сайта и на обоих такая хрень. Шаблоны естественно разные. Может быть хостинг? Очень надеюсь найти помощь на вашем сайте. На форумах Сапы и ВП тишина, уже не знаю что делать? Где же собака зарыта?


  21. Sergey
    Сам разобрался может и другим поможет. Если у вас ошибки типа как описывает мила. Чаще всего проблема кроется именно в кавычках. В посту в строчке ($_SERVER['DOCUMENT_ROOT'].’/’._SAPE_USER.’/sape.php’); кавычки косые! НО не все версии интерпритаторов php их правильно воспринимают поэтому и вылазит типа Warning: require_once(/home/c003161/domains/lessonsofpsychology.ru/public_html !сдесь должен быть слэш!8b9fc29bf8ba0ec9537c14c9cac7132fphp интерпритатор просто не понял что за косые кавычки и не вывел их Отсюда выход – попробуйте заменить косые кавычки на прямые

    Все верно. вставляйте этот же код. только скопировав из своей панели управления. Все ошибки из-за косых ссылок


  22. Вообще советую ставить вручную ссылки.
    Хотел бы услышать пояснение на счет return_links(), “UTF-8″, “CP1251″);
    ?>. Как раз это и не работает (выдает ошибку). Есть мнение?


  23. Нашел решение sape-zarabotok.ru


  24. Спасибо большое за статью, удалила нафиг плагины сапы которые постоянно давали сбои, и установила всё ручками по указаниям из статьи. Доступно! Работает, спасибо.


  25. Как на мой взгляд более менее стабильный плагин…спс

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