Доброе утро, Гость! Представляем Вам наши форумы. Вы можете зарегистрироваться чтобы писать на форумах или зайдите под своим именем, если Вы уже регистрировались.
   
   


Форум
 SX CMS / Техническая помощь
         Отображение новостей в левой колонке.

Похожие темы

Отображение новостей в левой колонке.


События Вторник, 08.12.2009, 13:06

Yulo

Группа: Пользователь
Ранг: Продвинутый
Cообщений: 241
Регистрация: 26.10.2009
Город: Тюмень
Можно ли так сделать и как это отобразиться на производительности сайта и вообще это технически правильно?

Вставил в класс news внизу. Взял из галереии этот код для отображения тэгов
PHP-код
function getTagCloud($categ='') {
        
$tags '';
        
$where = ($categ!='') ? "SELECT Tags FROM " PREFIX "_galerie WHERE Kategorie = '" $categ "'" "SELECT Tags FROM " PREFIX "_galerie_kategorien WHERE Aktiv='1' AND  Sektion = '" $_SESSION['area'] . "'";
        
$where_m = ($categ!='') ? "FROM " PREFIX "_galerie WHERE  Kategorie = '" $categ "'" "FROM " PREFIX "_galerie_kategorien WHERE Aktiv='1' AND  Sektion = '" $_SESSION['area'] . "'";
        
$query $GLOBALS['db']->Query($where);
        while(
$row $query->fetchrow()) {
            
$tags .= $row->Tags ',';
        }
        
$tagss array_unique(explode(',',$tags));
        @
sort($tagss);
        
$cloud = array();
        foreach(
$tagss as $key => $val) {
            
$obj '';
            if(
$val) {
                
$obj->Name $val;
                
$res $GLOBALS['db']->RowQuery("SELECT COUNT(Id) AS GalCount $where_m AND (Tags LIKE '%{$obj->Name}%' OR Tags LIKE '{$obj->Name},%' OR Tags LIKE '%,{$obj->Name}' )");
                
$obj->GCount $res->GalCount;
                switch(
$obj->GCount) {
                    case (
$obj->GCount <= 1): $obj->Class 'tagcloud1'; break;
                    case (
$obj->GCount == 2): $obj->Class 'tagcloud2'; break;
                    case (
$obj->GCount == 3): $obj->Class 'tagcloud3'; break;
                    case (
$obj->GCount >= 4): $obj->Class 'tagcloud4'; break;
                }
                
array_push($cloud$obj);
            }
        }
        return 
$cloud;
    }


Дальше я вставил в function displayNews
PHP-код
$GLOBALS['tmpl']->assign('tagCloud'$this->getTagCloud());

и в

PHP-код

if($archive==1) {
                
$GLOBALS['tmpl']->assign('headernav'$GLOBALS['config_vars']['Newsarchive']);
                
setMeta($GLOBALS['config_vars']['Newsarchive'],$GLOBALS['config_vars']['Newsarchive']);
                
$GLOBALS['tmpl']->assign('tagCloud'$this-> getTagCloud());
            }


Сделал это для того чтоб при переходе на Новости и при их чтении отображались тэги из галереи

Пользователь офлайн


Похожие темы  |   Предыдущая тема  |   Следующая тема

Быстрый переход:  
 

 Сейчас на сайте

Пользователей: 0, Гостей: 6

Поисковые боты: 148
Bot(134), oBot(3), Mail.Ru Bot(4), Spider, BingBot(5), Googlebot
 Статистика форума

  Темы Сообщения Пользователи
За сутки:
За неделю:
За месяц:
Всего:
Мы приветствуем нового участника: wonad81290
 Дни рождения

maxter (42)
Copyright © 2009 - 2024 SX All rights reserved | Powered by SX CMS 1.06 UTF | Контакты