Немного изменил компонент баннеры.
Вместо одного баннера, теперь выводится два подряд.
Сам баннер сопровождается текстовой ссылкой, что позволяет формировать тизеры картинка + заголовок.
Обернул каждый элемент тизера в дивы, и добавил классов, чтобы можно было форматировать, стилизовать тизеры как угодно через css.
И изменил стандартную ссылку баннера с вида /banner1 на более неопределённую /s/1, менее очевидную для всяких адблоков и вообще мне так больше нравится.
В итоге получается такой Директ...
Что для этого изменил.
Содержимое файла components/bannes/model.php
это
заменил на это
переименуйте классы, как вам нравится
/s/номер баннера — новая ссылка перехода баннера
в том же файле
заменил на это
LIMIT 2 — количество баннеров
Чтобы новая ссылка баннера работала в файле url_rewrite.php в корне сайта
это
заменить на это
стили как на скриншоте
Вместо одного баннера, теперь выводится два подряд.
Сам баннер сопровождается текстовой ссылкой, что позволяет формировать тизеры картинка + заголовок.
Обернул каждый элемент тизера в дивы, и добавил классов, чтобы можно было форматировать, стилизовать тизеры как угодно через css.
И изменил стандартную ссылку баннера с вида /banner1 на более неопределённую /s/1, менее очевидную для всяких адблоков и вообще мне так больше нравится.
В итоге получается такой Директ...
Что для этого изменил.
Содержимое файла components/bannes/model.php
это
public static function getImageBanner($banner){ return '<a href="/gobanner'.$banner['id'].'" title="'.$banner['title'].'" target="_blank"><img src="/images/banners/'.$banner['fileurl'].'" alt="'.$banner['title'].'"/></a>'; }
public static function getImageBanner($banner){ return '<div class="a_1"><a href="/s/'.$banner['id'].'" title="'.$banner['title'].'" target="_blank"><div><img class="a_2" src="/images/banners/'.$banner['fileurl'].'" alt="'.$banner['title'].'"/></div><div class="a_3">'.$banner['title'].'</div></a></div>'; }
/s/номер баннера — новая ссылка перехода баннера
в том же файле
$banner = $inDB->get_fields('cms_banners', "position = '$position' AND published = 1 AND ((maxhits > hits) OR (maxhits = 0))", '*', 'RAND()'); if(!$banner) { return $html; } if ($banner['typeimg']=='image'){ $html = self::getImageBanner($banner); } if ($banner['typeimg']=='swf'){ $html = self::getSwfBanner($banner); } if ($html) { // обновляем статистику просмотра баннера $inDB->query("INSERT IGNORE INTO cms_banner_hits (banner_id, ip) VALUES ('{$banner['id']}', '{$inUser->ip}')"); if($inDB->get_last_id()){ $inDB->query("UPDATE cms_banners SET hits = hits + 1 WHERE id= '{$banner['id']}'"); } }
$banners = $inDB->get_table('cms_banners', "position = '$position' AND published = 1 AND ((maxhits > hits) OR (maxhits = 0)) ORDER BY RAND() LIMIT 2", '*'); if(!$banners) { return $html; } $html = ''; foreach($banners as $banner){ if ($banner['typeimg']=='image'){ $html .= self::getImageBanner($banner); } if ($banner['typeimg']=='swf'){ $html .= self::getSwfBanner($banner); } if ($html) { // обновляем статистику просмотра баннера $inDB->query("INSERT IGNORE INTO cms_banner_hits (banner_id, ip) VALUES ('{$banner['id']}', '{$inUser->ip}')"); if($inDB->get_last_id()){ $inDB->query("UPDATE cms_banners SET hits = hits + 1 WHERE id= '{$banner['id']}'"); } } }
Чтобы новая ссылка баннера работала в файле url_rewrite.php в корне сайта
это
'source' => '/^gobanner([0-9]+)$/ui', 'target' => 'banners/{1}', 'action' => 'rewrite' );
заменить на это
'source' => '/^s\/([0-9]+)$/ui', 'target' => 'banners/{1}', 'action' => 'rewrite' );
.a_1{width:100%; max-width:400px; height:auto; padding:10px; box-sizing:border-box; border:1px solid silver; border-radius:4px;} .a_3{font-size:22px; text-decoration:underline;} .a_2{width:100%; height:auto;}