CMS Eleanor - Поиск
Полная версия этой страницы: Официальный форум Eleanor CMS » Контекстные ссылки сапы
Официальный форум Eleanor CMS » Для вебмастеров и владельцев сайтов » Комната программистов
Страницы: 1, 2
Решил поставить коды сапы для продажи контекстных ссылок. Но как это сделать применительно для элеонора?
Maximkaboom
Цитата (dimavsr @ 2010-06-12, 14:50)
Решил поставить коды сапы для продажи контекстных ссылок. Но как это сделать применительно для элеонора?
http://forum.eleanor-cms.ru/index.php?showtopic=1343&hl=sape

это не то. обычные блоки с ссылками сапы уже давно у меня работают. Я задал вопрос о контекстных ссылках: "Рекламные ссылки в контенте страницы позволяют рекламодателям покупать рекламные места внутри существующих текстов на страницах Вашего сайта. Показ таких ссылок не требует выделения отдельного места на странице, и визуально более выгоден рекламодателям и вебмастерам. Размещение кода отображения контекстных ссылок не является обязательным, но мы рекомендуем от него не отказываться, т.к. это хорошая возможность дополнительного заработка, в особенности для «контентных» сайтов. В случае, если Вы все же хотите отказаться от размещения таких ссылок, Вы можете пропустить данный пункт инструкции."
Alexander
dimavsr, такое можно без проблем сделать. Вопрос: Вас интересует размещение таких ссылок НА ВСЕЙ области страницы или в отдельных ее участках?
Maximkaboom
dimavsr, извиняюсь=) недосмотрел что то =) 
в статьях, на всех страницах моего сайта (почти) есть статьи не менее 3000-4000 знаков, в тексте каждой статье. Как это сделать?
создавать отдельные блоки как для обычных ссылок (http://eleanor-manual.ru/faq/блоки/sape-in-eleanorcms.html) или же при редактировании раздела текст "статической странице"?
Alexander
dimavsr, покажите, пожалуйста, каким образом сапа предоставляет вебмастерам такую возможность. Приведите пример кода.
http://www.sape.ru/site.php?act=add
"Для хостинга с поддержкой PHP"
далее
"Установка кода отображения гипертекстовых ссылок непосредственно из контента страницы (контекстные ссылки)"
Alexander
dimavsr, ссылка только для зарегистрированных пользователей. Выкладывайте контент сюда!
выкладываю:
Рекламные ссылки в контенте страницы позволяют рекламодателям покупать рекламные места внутри существующих текстов на страницах Вашего сайта. Показ таких ссылок не требует выделения отдельного места на странице, и визуально более выгоден рекламодателям и вебмастерам. Размещение кода отображения контекстных ссылок не является обязательным, но мы рекомендуем от него не отказываться, т.к. это хорошая возможность дополнительного заработка, в особенности для «контентных» сайтов. В случае, если Вы все же хотите отказаться от размещения таких ссылок, Вы можете пропустить данный пункт инструкции.

Важно: К продаже контекстных ссылок допускаются только страницы с постоянным содержимым! То есть на те страницы, на которых часто изменяется контент, код показа контекстных ссылок вставлять не надо, либо не надо допускать к продаже такие страницы после их индексации.

Для вашего удобства мы реализовали 2 варианта размещения кода отображения контекстных ссылок:
А) С использованием функции ob_get_contents()
Особенности:
требует минимум усилий, для своего подключения
удобен, если на страницах Вашего сайта присутствует множество текстовых блоков, в которых вы планируете размещать ссылки
может не работать если на сайте используется gzip сжатие
Данный код должен размещаться в самом начале php-файла, до вывода тега body в результирующий html-документ.
Последовательность действий:

Для корректной индексации страниц системой и для правильного отображения ссылок, в исходном коде тех страниц, на которых вы планируете размещать контекстные ссылки, добавьте в самое начало (до вывода тега body в результирующий html-документ) следующий код
<?php
if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'd035cfc82fe25bdaa53b9b449cccdd18');
}
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$sape_context = new SAPE_context();
ob_start(array(&$sape_context,'replace_in_page'));
?>

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

define('_SAPE_USER', 'd035cfc82fe25bdaa53b9b449cccdd18');

,на

if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'd035cfc82fe25bdaa53b9b449cccdd18');
}

Далее Вам необходимо заключить в теги <sape_index> ... </sape_index> текстовые фрагменты страницы, внутри которых Вы планируете размещать ссылки.

Важно: данные теги будут автоматически вырезаться на этапе обработки и не будут никому видны, кроме нашего робота-индексатора.
Б) С использованием функции replace_in_text_segment()
Особенности:
вариант работает путем непосредственной передачи текстового фрагмента в функцию replace_in_text_segment(), что позволяет отказаться от проставления тегов <sape_index> ... </sape_index>
удобен при использовании шаблонных движков
Последовательность действий:

Для корректной индексации страниц системой и для правильного отображения ссылок, в исходном коде тех страниц, на которых вы планируете размещать контекстные ссылки, добавьте в самое начало (до вывода тега body в результирующий html-документ) следующий код:
<?php
if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'd035cfc82fe25bdaa53b9b449cccdd18');
}
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$sape_context = new SAPE_context();
?>

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

define('_SAPE_USER', 'd035cfc82fe25bdaa53b9b449cccdd18');

на

if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'd035cfc82fe25bdaa53b9b449cccdd18');
}

Далее, перед выводом каждого фрагмента текста страницы, из которого Вы хотите продавать ссылки, необходимо предварительно обработать данный фрагмент функцией replace_in_text_segment().

Пример:
<?
$text = 'В данном фрагменте текста страницы моего сайта я хочу продавать контекстные ссылки';
$text = $sape_context->replace_in_text_segment($text);
echo $text;
?>

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

Важно: инициализирующая php-вставка должна располагаться в php-файле выше первого вызова функции replace_in_text_segment.

Важно: при использовании данного варианта кода вывода контекстных ссылок не требуется проставлять теги <sape_index> ... </sape_index>x.
Для следующих движков Вы можете скачать плагины:
Плагин для Wordpress (Инструкция внутри)
Плагин для Joomla! (Инструкция внутри)

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

По-завершению индексации сайт получит статус IND, и встанет в очередь на модерацию.

После присвоения площадке статуса IND, перейдя на страницу «управление ценами», Вы можете назначить месячную стоимость, по которой будут продаваться ссылки с различных страниц Вашего сайта. Изменение цен на размещение контекстных ссылок осуществляется со страницы «управление ценами» путем выставления коэффициента мультипликации (от 1 до 2) относительно базовой стоимости размещения обычной ссылки на странице.

В разделе «страницы» и «контекстные страницы» вам необходимо активировать страницы, которые вы планируете допустить к продаже соответственно обычных и контекстных ссылок.

Как только сайт проходит модерацию, ему присваивается статус ОК и его страницы становятся доступными для поиска в каталоге площадок.

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

Внимание: для обсуждения вопросов по установке кода размещения контекстных ссылок на различные популярные движки, оказания взаимопомощи, публикации баг-репортов и т.п. на нашем форуме был создан специальный раздел
Alexander
Цитата (dimavsr @ 2024-03-28 18:42)
$text = $sape_context->replace_in_text_segment($text);

Вот прекрасный код. Думаю, его и стоит использовать.

Найдите в файла classes/mainclass.php участок:
$content=ob_get_contents();

И добавьте после него:

$content=$sape_context->replace_in_text_segment($content);


Естественно, переменная $sape_context должна быть доступна в этом участке кода!
а как быть с этим?
<?php
if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'd035cfc82fe25bdaa53b9b449cccdd18');
}
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$sape_context = new SAPE_context();
?>
куда это добавить?
Alexander
dimavsr, вы же писали что:
Цитата (dimavsr @ 2024-03-28 18:42)
обычные блоки с ссылками сапы уже давно у меня работают.


Ну добавьте выше (перед строкой, которую я говорил вставить). Вот и все.
Вроде сделал.
Внес изменения только в файл classes/mainclass.php
Добавил после
$content=ob_get_contents();
следующее
if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'd035cfc82fe25bdaa53b9b449cccdd18');
}
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$sape_context = new SAPE_context();

        $content=$sape_context->replace_in_text_segment($content);

Alexander, верно? Если да, то отправлю на переиндексацию (она доступна только раз в месяц)
Alexander
Вроде все верно.
Вроде все ок, сапа сайт проиндексировала успешно.
Спасибо, Alexander!
Страницы с контекстными местами выставлены на продажу, посмотрим как работает код и система. Отпишусь.



Добавлено через 0 минут, 46 секунд:

не могу поднять разработчику репу - ошибка

Добавлено через 5 минут, 9 секунд:

у сапы появилась возможность продажи статей с сайта.
Вопрос: как файл отвечает за редактирование правого блока?
Alexander
Рейтинг (репутация) будет вскоре поправлена. Уже писал об этом.

Какого именно блока?
"Правый блок", так он изначально и назывался. В его настройках не указан файл блока, только содержание. Хочу в файл правого блока вставить код:
как я понял нижеуказанный блок именно для автоматического создания страниц сайта со статьями
<?php
if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'd035cfc82fe25bdaa53b9b449cccdd18');
}
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$sape_article = new SAPE_articles();
?>

Далее, в тех местах страницы, где будут выводить ссылки на анонсы следующий код:
<?php echo $sape_article->return_announcements(); ?>

Будет же работать "такое" не в файле блока (как напр http://forum.eleanor-cms.ru/index.php?showtopic=1343&hl=sape [?]) а в файле "правого блока"?
Надеюсь понятно выразился))
Alexander
По-моиму проще это:

if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'd035cfc82fe25bdaa53b9b449cccdd18');
}
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$sape_article = new SAPE_articles();


Объявить где-то в index.php, чтобы получилось нечто вроде:

if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'd035cfc82fe25bdaa53b9b449cccdd18');
}
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$Mainclass->Sape=new SAPE_articles();


Теперь объект $Mainclass->Sape доступен отовсюду и его можно использовать где угодно на своё усмотрение.
1. а эту строку не нужно? <?php echo $sape_article->return_announcements(); ?>

2. index из папки upload\templates\Uniel?

Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.