Главная » Wordpress, Партнерки/Биржи

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

20 июня 2008 18 комментариев Постоянная ссылка

Сегодня помогал человеку установить код sape на 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>

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

___________________________________________________

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

По теме:


Метки: , , , , , ,

Понравилась запись? Обязательно подпишитесь на обновление по RSS!





18 комментариев »

  • Полезное из блогов…

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

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

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

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

    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

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

    Спасибо!

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

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

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

    define(’_SAPE_USER’, ‘c1b1dd04e209827453a12dde1ef31bc3′);

    ,на

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

  • Заменила.
    Теперь вылазит ошибка:
    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

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

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

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

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

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

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

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

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

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

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

  • Мила, пришлите мне ваш шаблон, который используется на блоге, и в который вы вставляете код, на email alexvs.mail@gmail.com
    В шаблоне уже должен стоять ваш код - я посмотрю, что вы не так делаете.

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

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

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

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

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

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

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

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

Leave your response!