Понедельников НЕТ!
Регистрация или вход Регистрация или вход Избранное на этом сайте | Главная | Анкета | Рекомендовать | Обратная связь | В избранное | Сделать домашней
Скачать SSDForums
Скачать SSDForums 1.0.1 Скачать SSDForums 1.0.1
Скачать SSDForums 1.0.1 SP1 Скачать SSDForums 1.0.1 SP1
Скачать SSDForums 1.0.1 SP2 Скачать SSDForums 1.0.1 SP2
SSD Forums 1.0.1 SP3 only Slaed 3.5 Pro SSD Forums 1.0.1 SP3 only Slaed 3.5 Pro
SSD Forums 1.0.1 SP4-beta only Slaed 4.1 Pro SSD Forums 1.0.1 SP4-beta only Slaed 4.1 Pro
Jewelry Сase Team
Скачать Ruby Chat 0.1.1 Скачать Ruby Chat 0.1.1
Меню
Главная
Форум
Магазин цифровых товаров

Новости
Подписка на новости
Темы новостей
Добавить новость

Каталог файлов
Карта файлового архива
Публикации

Опросы
Анкета пользователя
Чат

BestMaker
Викторина
Архив новостей
Карманный оракул
Поиск по сайту с помощью Яндекс
Поиск по сайту с помощью Google
Фото дня
Для души
Погода на 3 дня
IndexCat
IndexTop
Map_Pages
Поиск по сайту









Подписка на новости
Ваше имя:
Ваш E-Mail:*
Секретный код:
Секретный код
Повторить:*
Интересное в сети

Sape — это система купли-продажи ссылок
с главных и внутренних страниц сайтов
Форум -> News (модуль и блок) -> Запрет на вывод категорий..
Запрет на вывод категорий..
JameSNSK Дата: 07.01.2008, в 20:15 | Сообщение №1
JameSNSK
Пользователь
Пользователь №: 123
Сообщений: 48

Подскажите как сделать в модуле news запрет на вывод определенных категорий ...
Подробнее..
Есть блок Last_News выводит последнии новости из категорий..
Хотелось бы поставить запрет на категории в модуле news которые выводятся в блоке Lasw_news...
Так же помогите пожалуйста с этим блоком.
Он проводит отбор новостей и потом отобранные выводит на главной..
Хотелось бы что бы отбор не происходил и просто в блоке отображались новости из категорий...
так же можно было поставить запрет на вывод определенных категорий..

Код
1
<?php
if (!defined('BLOCK_FILE')) {
   Header("Location: ../index.php");
   exit;
}

global $prefix, $db;

$max_num = 10; // Из скольких последних новостей происходит отбор
$see_more_num = 3; // Количество новостей на категорию.

$sql = 'SELECT
         c.id, c.title, c.description, c.img, s.sid, s.aid, s.title, s.time, s.hometext, LENGTH(s.bodytext) AS bodylen, s.comments
      FROM
         '. $prefix. '_categories AS c
      INNER JOIN
         '. $prefix. '_stories AS s
      ON
         (s.catid = c.id)
      WHERE
         c.modul = \'News\' AND s.status = \'1\'
      ORDER BY
         c.id, s.time
            DESC
      LIMIT 0, '.$max_num;
$res = $db->sql_query($sql);

$news = array ();
while (list ($cid, $ctitle, $cdesc, $cimg, $sid, $aid, $stitle, $stime, $shometext, $sbodylen, $scomments) = $db->sql_fetchrow ($res))
{
   if (!isset($news[$cid]))
   {
      $news[$cid] = array (
         'title' => $ctitle,
         'desc' => $cdesc,
         'img' => $cimg,
      );
   }
   $news[$cid]['news'][$sid] = array (
      'aid' => $aid,
      'title' => $stitle,
      'time' => $stime,
      'hometext' => strip_tags(bb_decode($shometext, 'News')),
      'bodylen' => $sbodylen,
      'scomments' => $scomments,
   );
}

$num_cats = sizeof($news);
$span = ($num_cats % 2) ? false : true;

$blocks = $count = 1;
$content = '<div width="100%">';
foreach ($news AS $cid => $cat)
{
   $stories = 0;
   $story_text = '';

   if ($num_cats > 2 AND $count == $num_cats AND !$span)
   {
      $width = '100%';
      $float = 'left';
      $pm_border = 'padding-top: 5px; border-top: 1px #CCCCCC solid;';
   }
   else
   {
      $width = '49%';
      $float = ($count%2) ? 'right' : 'left';
      $pm_border = '';
   }
   
   foreach ($cat['news'] AS $sid => $story)
   {
      if ($stories)
      {
         $story_text .= "<div><li><a href=\"index.php?name=News&view={$sid}\" title=\"{$story['title']}\">{$story['title']}</a></li></div>\n";
      }
      else
      {
         $story_text = '<div><b>'.$story['title'].'</b></div>'."\n".$story['hometext'];
         if ($story['bodylen'] > 0) $story_text .= "<div><a href=\"index.php?name=News&view={$sid}\" title=\"Читать дальше...\">Читать дальше...</a></div>\n";
         if (sizeof ($cat['news']) > 1) $story_text .= '<hr><b>Читайте также:</b>'."\n";
      }
      
      $stories++;
      if ($stories >= $see_more_num) break;
   }
   
   $catimg = '';
   if ($cat['img']) $catimg = "<a href=\"index.php?name=News&cat={$cid}\" title=\"{$cat['title']}\"><img src=\"images/categories/{$cat['img']}\" border=\"0\" alt=\"{$cat['title']}\" title=\"{$cat['title']}\" align=\"right\" hspace=\"5\" vspace=\"1\"></a>";

   $blocks = ($blocks == 1) ? 2 : 1;
   $count ++;
   
   $clear = ($count%2 AND $count - $num_cats < 0) ? '<div style="clear:both; border-top: 1px #CCCCCC solid; width:100%; padding-top:5px; padding-bottom:5px;"></div>' : '';
   
   $content .= <<<HTML
<div style="float:{$float}; width:{$width}; padding-bottom:5px; {$pm_border}" class="bgcolor1">
{$catimg}
<div align=left>
<h3>
  <a href="/index.php?name=News&cat={$cid}" title="{$cat['title']}">{$cat['title']}</a>
</h3>
</div>

<div class="bgcolor1">
{$story_text}
</div>
</div>
{$clear}
HTML;
}
$content .= '</div>';
?>


_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Отредактированно JameSNSK 07.01.2008 г. в 20:18:11
Sunvas Дата: 07.01.2008, в 22:38 | Сообщение №2
Sunvas
Профи
Пользователь №: 181
Сообщений: 552

Если нежелаемых категорий мало, то if(){} поможет. Если их много, то тут надо делать еще одно поле в БД и графу в админке.
JameSNSK Дата: 07.01.2008, в 23:09 | Сообщение №3
JameSNSK
Пользователь
Пользователь №: 123
Сообщений: 48

Так как я пота дуб дубом в рнр подробнее можно расписать гд прописывать и как..
Категорий мало но думаю дальше будет полезно сделать и для больших категорий...
Serg_pnz Дата: 08.01.2008, в 11:43 | Сообщение №4
Serg_pnz
Администратор
Пользователь №: 1
Сообщений: 2242

JameSNSK, если честно, то уж слишком здорово напутано, давай пойдем от обратного - какой по функционалу блок тебе нужен? Только прошу тебя - пиши по пунктам ))

Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz
"...даме водки? Это чистый спирт!" © кот Бегемот
JameSNSK Дата: 08.01.2008, в 12:43 | Сообщение №5
JameSNSK
Пользователь
Пользователь №: 123
Сообщений: 48

блок выводит последние новости из категорий (подкатегорий) модуля news
Распологается по середине и делится на две части по вертикали
Выводит главную новость дня..(тут вот не знаю кто то писал что можно сделать через админку что бы определенной новости давать статус НОВОСТЬ ДНЯ)
Можно сделать запрет на вывод определенных категорий
в файле прикрепил картинку..
1,2,3,4,5 - категории
6- располагается главная новость..

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Отредактированно JameSNSK 08.01.2008 г. в 13:02:16


Прикрепленные файлы:
3.42 KB
Serg_pnz Дата: 08.01.2008, в 16:32 | Сообщение №6
Serg_pnz
Администратор
Пользователь №: 1
Сообщений: 2242

Вот нашел какие-то запчасти...
сам сабж тут http://www.slaed.net/forum/index.php?showtopic=6163

Цитата
10 последних с категория к которой принадлижит статья
Код
1
<?php
if (!defined('BLOCK_FILE')) {
    Header("Location: ../index.php");
    exit;
}
$top= "10"; #количество новостей в блоке
$symbolov = 4; #количество символов в заголовке

global $prefix, $db;
    $lugar=1;
    $content .= "<table cellspacing=\"0\" width=\"100%\" cellpadding=\"1\" border=\"0\" align=\"left\">";

$result = $db->sql_query("SELECT s.sid, s.title, s.catid, c.title FROM ".$prefix."_stories AS s LEFT JOIN ".$prefix."_stories_cat AS c on (s.catid=c.catid) WHERE s.time <= now() AND s.status='1'  ORDER BY s.time DESC LIMIT 0,$top");
while (list($sid, $s_title, $catid, $c_title ) = $db->sql_fetchrow($result)) {
    $title=cutstr( $s_title, $symbolov );
if ($c_title!="") {$out_c_title="<i>категория: <a href=\"index.php?name=News&op=cat&catid=$catid\">$c_title</i>";} else {$out_c_title="";}
$content .= "<tr><td align=\"right\" >$lugar:</td><td align=\"left\" width=\"100%\"> <a href=\"index.php?name=News&op=article&sid=$sid\" title=\"$s_title\">$title</a></td></tr>"."<tr><td colspan=2>$out_c_title<hr></td></tr>";
        $lugar++;
    }

    $content .= "</table>";
?>

Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz
"...даме водки? Это чистый спирт!" © кот Бегемот
JameSNSK Дата: 08.01.2008, в 21:18 | Сообщение №7
JameSNSK
Пользователь
Пользователь №: 123
Сообщений: 48

хм не хочет работать работает только этот
но проблеммы новость выводит но нажимая на ссылку переходит на главную новостей вместо того что бы перейти на саму новость..
так же придется делать блоки в которых будет выводится каждая категория....
PHP - Код
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
if (!defined('BLOCK_FILE')) {
    
Header("Location: ../index.php");
    exit;
}
$top= "5"; #количество новостей в блоке
$symbolov = 100; #количество символов в заголовке
/* Top 10 read stories */
global $prefix, $db, $dbi;
$result = $db->sql_query("SELECT sid, title FROM ".$prefix."_stories WHERE time <= now() AND status='1' ORDER BY rand() LIMIT 0,$top");
    
$lugar=1;
    
$content .= "<table cellspacing=\"0\" width=\"100%\" cellpadding=\"1\" border=\"0\" align=\"left\">";
    while (
$row = $db->sql_fetchrow($result)) {
    
$sid = intval($row['sid']);
    
$title = stripslashes(check_html($row['title'], "nohtml"));
    
$title=cutstr( $title, $symbolov );
    
$lugar = $lugar;
$content .= "<tr><td align=\"right\" >$lugar:</td><td align=\"left\" width=\"100%\"> <a href=\"index.php?name=News&op=article&sid=$sid\">$title</a></td></tr>";
        
$lugar++;
    }
    
$content .= "</table>";
?>
Serg_pnz Дата: 08.01.2008, в 21:45 | Сообщение №8
Serg_pnz
Администратор
Пользователь №: 1
Сообщений: 2242

JameSNSK, да это я на скорую руку накопал, попозже надеюсь займусь вплотную

Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz
"...даме водки? Это чистый спирт!" © кот Бегемот
JameSNSK Дата: 11.01.2008, в 02:18 | Сообщение №9
JameSNSK
Пользователь
Пользователь №: 123
Сообщений: 48

Вообщем отрыл блок который был выложен в какой то теме Сержем..
Вообщем создал пока еще дополнительно два раздела для вывода категорий с остальными пока мучаюсь но думаю докумекаю сам..
Но вот тут я пока ламер вообщем нужна помощь в следующем...
1)Название разделов что бы являлись еще и ссылками на данный раздел
2)В блоках сделать вывод текста последней добавленной новости после текста что то вроде ЧИТАТЬ ДАЛЬШЕ и переход на всю новость
3) После читать дальше сделать Читать также где будет последнее №-е кол-во новостей в виде ссылок на всю новость...
4) Если новость написана в один день то она должна отображаться вроде как мигающей картинкой..(ну картинку сам подберу главное сделать ссылку если статья вчерашняя картинка одна если сегодня то картинка другая)

Идея впринципе заимствована из блока который выложен в первом посте...
PHP - Код
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<?php
if (!defined('BLOCK_FILE')) {
    
Header("Location: ../index.php");
    exit;
}

global
$prefix, $db;
$strip = 30;
$limit = 10;
$content .= "<table width=\"100%\" border=\"0\" cellpadding=\"2\" cellspacing=\"1\" class=\"bgcolor4\">";

$content .= "<tr><th>Раздел1</th><th>Раздел2</th></tr><tr class=\"bgcolor1\">";

// Раздел1
$content .= "<td valign=\"top\">";
$result = $db->sql_query("SELECT sid, title, time FROM ".$prefix."_stories WHERE time <= NOW() AND status ='1' AND catid='8' ORDER BY time DESC LIMIT $limit");
while(list(
$sid, $title, $time) = $db->sql_fetchrow($result)) {
    
$linkstrip = cutstr($title, $strip);
    
$content .= "<table cellspacing=\"0\" cellpadding=\"1\" border=\"0\"><tr><td><img src=\"images/blocks/News.gif\" title=\"$title\"></td><td><a href=\"index.php?name=News&op=article&id=$sid\" title=\"$title\">$linkstrip</a></td></tr></table>";
}

// Раздел2
$content .= "<td valign=\"top\">";
$result = $db->sql_query("SELECT sid, title, time FROM ".$prefix."_stories WHERE time <= NOW() AND status ='1' AND catid='9' ORDER BY time DESC LIMIT $limit");
while(list(
$sid, $title, $time) = $db->sql_fetchrow($result)) {
    
$linkstrip = cutstr($title, $strip);
    
$content .= "<table cellspacing=\"0\" cellpadding=\"1\" border=\"0\"><tr><td><img src=\"images/blocks/News.gif\" title=\"$title\"></td><td><a href=\"index.php?name=News&op=article&id=$sid\" title=\"$title\">$linkstrip</a></td></tr></table>";
}


// Раздел3
$content .= "<tr><th width=\"50%\">Раздел3</th><th width=\"50%\">Раздел4</th></tr><tr class=\"bgcolor1\">"; // Шапка блоков
$content .= "<td valign=\"top\">";
$result = $db->sql_query("SELECT sid, title, time FROM ".$prefix."_stories WHERE time <= NOW() AND status ='1' AND catid='10' ORDER BY time DESC LIMIT $limit");
while(list(
$sid, $title, $time) = $db->sql_fetchrow($result)) {
    
$linkstrip = cutstr($title, $strip);
    
$content .= "<table cellspacing=\"0\" cellpadding=\"1\" border=\"0\"><tr><td><img src=\"images/blocks/News.gif\" title=\"$title\"></td><td><a href=\"index.php?name=News&op=article&id=$sid\" title=\"$title\">$linkstrip</a></td></tr></table>";
}

// Раздел4
$content .= "<td valign=\"top\">";
$result = $db->sql_query("SELECT sid, title, time FROM ".$prefix."_stories WHERE time <= NOW() AND status ='1' AND catid='11' ORDER BY time DESC LIMIT $limit");
while(list(
$sid, $title, $time) = $db->sql_fetchrow($result)) {
    
$linkstrip = cutstr($title, $strip);
    
$content .= "<table cellspacing=\"0\" cellpadding=\"1\" border=\"0\"><tr><td><img src=\"images/blocks/News.gif\" title=\"$title\"></td><td><a href=\"index.php?name=News&op=article&id=$sid\" title=\"$title\">$linkstrip</a></td></tr></table>";
}
$content .= "</td></tr></table>";
?>


_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Отредактированно JameSNSK 11.01.2008 г. в 02:30:54

Вы не можете ответить в тему анонимно, пожалуйста, войдите или зарегистрируйтесь!


SetLinks error: Incorrect password!
Реклама
Главная | Форум | Новости | Подписка на новости | Темы новостей | Добавить новость | Каталог файлов | Карта файлового архива | Публикации | Опросы | Анкета пользователя | Чат | BestMaker | Викторина | Архив новостей | Карманный оракул | Поиск по сайту с помощью Яндекс | Поиск по сайту с помощью Google | Фото дня | Для души | Погода на 3 дня | IndexCat | IndexTop | Map_Pages | Весь Оракул

Rambler's Top100

Генерация страницы: 0.294 сек. и 17 запросов к базе данных за 0.021 сек.
Web site engine code is Copyright © 2006 by SLAED CMS. All rights reserved.