abo +sape

Jaarg

Гуру форума
Регистрация
18 Авг 2008
Сообщения
494
Реакции
97
Сталкнулся с такой проблемой - нужно на або цмс повесить сапу. И как то у меня не получается это сделать, так как пхп не выполняется в абовских хтмл страничках.

Помогите плз )

ps ставить пытался "Для хостинга с поддержкой PHP"
 
вроде бы разобрался.
выкинул все из _top.html, вставил в него код сапы, сразу следом вставил код вывода сапы и все это вызываю в нужном месте темплейта через <!-- INCLUDESCRIPT BLOCK : top -->

правда, в разделе "мои площадки, страницы контекст" написано, что "Ни на одной странице сайта пока не найден контекстный код."

терь жду, то ли это после модерации изменится (в разделе страницы куча проиндексированных страниц со статусом "ок"), то ли я все сделал не так и абосекс продолжится :)
 
Да, метод работает. Правда, тестировался в итоге на XAP, но принцип тот же.

Спасибо всем участникам дискуссии, особенно Jaarg :D
 
я реализовывал это через модуль банеры

в классе Banners

есть фукция

show_random_banner()

см. ниже как я реализовал у себя


function show_random_banner($category_id = null, $new_line = null) {
global $CONFIG, $tpl, $main, $db, $server, $lang;
$category_id = (int)$category_id;
$where = ($category_id) ? $where = "category_id = $category_id AND" : "";

$BC = new CBannersCategories_DB($this->table_prefix.'_banners_categories', 'id');
$BD = new CBannersData_DB($this->table_prefix."_banners", "id");
if (count($this->already_displayed) > 0) $not_in_str = " AND id NOT IN (" . implode(",", $this->already_displayed) . ")";
$db->query('SELECT *
FROM '.$this->table_prefix.'_banners
WHERE '.$where.' active = 1 '.$not_in_str.'
ORDER BY RAND()
LIMIT 0, 1');
$db->next_record();
if ($db->f('id')) {
$banner_size = trim($db->f('size'));
$banner_style_css = trim($db->f('style_css'));
switch ($db->f('type')) {
// àíèìèðîâàííûé ãèô
case 1:
$main->include_main_blocks($this->module_name."_gif.html", "main");
if ($db->f('filename')) {
$img_path = $CONFIG['banners_path'].$db->f('filename');
if (file_exists($img_path)) {
$size = getimagesize($img_path);
$w = $size[0];
$h = $size[1];
$banner = "&nbsp;<a href='".$db->f('url')."' target=_blank><img src=\"/". $img_path."\" alt=\"\" width=\"$w\" height=\"$h\" border=\"0\"></a>";
}
}
break;
// ôëåø-áàííåð
case 2:
$main->include_main_blocks($this->module_name."_flash.html", "main");
$html_code = $db->f('text');
$url = $db->f('url');
$filename = $db->f('filename');
$imagename = $db->f('imagename');
$html_code = preg_replace('/EMBED src="?[^"\s]*"?/i', "EMBED src=\"/".$CONFIG["banners_path"]."$filename?link=$url\"", $html_code);
$html_code = preg_replace('/PARAM NAME="?movie"? VALUE="?[^"\s]*"?/i', "PARAM NAME=movie VALUE=\"/" . $CONFIG["banners_path"] . "$filename?link=$url\"", $html_code);
$banner = $html_code;
$banner = str_replace("'", "\'", $banner);
if ($imagename) $alternative_image = "<a href=\"$url\"><img src=\"/".$CONFIG["banners_path"].$imagename."\" border=0></a>";
break;
// òåêñòîâûé áàííåð
case 3:
$main->include_main_blocks($this->module_name."_text.html", "main");
$banner = "&nbsp;<a href=\"".$db->f('url')."\" target=_blank>".$db->f('text')."</a>";
break;


// html áàííåð
case 4:
$main->include_main_blocks($this->module_name."_html.html", "main");
$html_code = html_entity_decode($db->f('text'), ENT_QUOTES);
$url = $db->f('url');
$banner = $html_code;
break;

####### Ðåêëàìíûå Àãåíñòâà ##########

# i-Media
case 5:
$main->include_main_blocks($this->module_name."_html.html", "main");
if ( !defined('IM_RECLAME_DIR') ) { define('IM_RECLAME_DIR', 'im_relame_87c34b85b4f7a89139178'); }
include_once(RP.'mod/banners/addmodule/'.IM_RECLAME_DIR.'/im_reclame.class.php');
$banner = $imedia->showLinks(8);
$banner .= $imedia->showLinks();
$banner = str_replace("</span>", "</span><br><br>", $banner);
break;


# Sape.ru
case 6:
$main->include_main_blocks($this->module_name."_html.html", "main");
if (!defined('_SAPE_USER')){ define('_SAPE_USER', '7256c2991f2c9a795ff637c440aaba'); }
include_once(RP.'mod/banners/addmodule/'._SAPE_USER.'/sape.php');
$sape = new SAPE_client();
$banner = $sape->return_links(9);
$banner = str_replace("::", "<br><br>", $banner);
break;



# LinkFeed.ru
case 7:
$main->include_main_blocks($this->module_name."_html.html", "main");
if ( !defined('LINKFEED_USER') ) { define('LINKFEED_USER', '651a1a021c528c7cdd155791618ff0f9d325'); }
include_once(RP.'mod/banners/addmodule/'.LINKFEED_USER.'/linkfeed.php');
$linkfeed = new LinkfeedClient();
$banner = $linkfeed->return_links(9);
$banner .= $linkfeed->return_links();
$banner = str_replace("::", "<br><br>", $banner);
break;



}
$nl = ($new_line) ? "<br>" : "";
$tpl->prepare();

if ($banner) {
$this->already_displayed[] = $db->f('id');
//âûâîä íà ýêðàí
$tpl->newBlock('block_banner');
$tpl->newBlock('block_size_banner_'.$banner_size);
$tpl->assign(array(
style_css => $banner_style_css,
banner => $banner,
alternative_image => $alternative_image,
nl => $nl, // åñòü ëè ïåðåíîñ íà íîâóþ ñòðîêó
));
$tpl->gotoBlock('block_size_banner_'.$banner_size);
$tpl->gotoBlock("block_banner");

return TRUE;
}
}
return FALSE;
}
 
Сделал как описано у satyra заработало, только пришлось вставлять код в текстовую ссылку, так как она не используется, вместо:
PHP:
case 3:
$main->include_main_blocks($this->module_name."_text.html", "main");
$banner = "&nbsp;<a href=\"".$db->f('url')."\" target=_blank>".$db->f('text')."</a>";
break;
поставил код описанный выше:
PHP:
case 3:
$main->include_main_blocks($this->module_name."_html.html", "main");
if (!defined('_SAPE_USER')){ define('_SAPE_USER', '7256c2991f2c9a795ff637c440aaba'); }
include_once(RP.'mod/banners/addmodule/'._SAPE_USER.'/sape.php');
$sape = new SAPE_client();
$banner = $sape->return_links(9);
$banner = str_replace("::", "<br><br>", $banner);
break;
Далее создал категорию баннеров, у текстового баннера заполнил поля. Поставил баннер как модуль на страницу, выбрал созданную категорию.
Подставил на страницу, заработало.
 
Назад
Сверху