inokentik 45 Опубликовано: 12 сентября 2009 Рассказать Опубликовано: 12 сентября 2009 Всем привет! А можно ли выводить популярные новости для определенной категории? Сейчас на сайте популярные новости выводятся по средствам {topnews} и он отображает все новости из всех категорий, а как бы сделать чтоб он выводил новости только из конкретной категории? Просто хочется сделать так: 1. Популярные личности 2. Музыкальные хиты и следовательно чтоб новости были из этих категорий Подскажите кто знает Спасибо за внимание, уже сам нашер решение! Вот, кому интересно: 1. в файле index.php находим: $config['http_home_url'] = explode ( "index.php", strtolower ( $_SERVER['PHP_SELF'] ) ); $config['http_home_url'] = reset ( $config['http_home_url'] ); выше вставляем: if ( stristr( $tpl->copy_template, "{topnews" ) ) { $tpl->copy_template = preg_replace( "#\\{topnews category=['\"](.+?)['\"]\\}#ies", "topnews_print('\\1')", $tpl->copy_template ); } 2. в файле engine/modules/functions.php добавляем функцию function topnews_print ($custom_category){ global $db,$config; if(!defined('DATALIFEENGINE')) { die("Hacking attempt!"); } $koma = strpos($custom_category, ','); if ($koma >= 2) $categ = substr ($custom_category, 0, 2); else $categ = substr ($custom_category, 0, 1); $topnews = dle_cache("topnews_" . $categ, $config['skin']); if (!$topnews) { $custom_category = $db->safesql(str_replace(',', '|', $custom_category)); $this_month = date ('Y-m-d', time()-(3600*24*27)); $db->query("SELECT id, title, date, alt_name FROM " . PREFIX . "_post WHERE approve='1' AND category regexp '[[:<:]]($custom_category)[[:>:]]' AND date >= '$this_month'AND date < '$this_month' + INTERVAL 1 MONTH ORDER BY rating DESC, comm_num DESC, news_read DESC, date DESC LIMIT 0,10"); while($row = $db->get_row()){ $row['date'] = strtotime($row['date']); if (strlen($row['title']) > 55) $title = substr ($row['title'], 0, 55)." ..."; else $title = $row['title']; $go_page = ($config['ajax']) ? "onclick=\"DlePage('newsid=".$row['id']."'); return false;\" " : ""; if ($config['allow_alt_url'] == "yes") $link = "<a {$go_page}href=\"".$config['http_home_url'].date('Y/m/d/', $row['date']).$row['alt_name'].".html\">".stripslashes($title)."</a>"; else $link = "<a {$go_page}href=\"$PHP_SELF?newsid=".$row['id']."\">".stripslashes($title)."</a>"; $topnews .= "".$link."<br />"; } $db->free(); create_cache ("topnews_" . $categ, $topnews, $config['skin']); } return $topnews; } После чего в нужном месте прописываем: {topnews category="ID категории"} пример можно посмотреть здесь www.bez-gnid.ru Можно выводить несколько раз! Информация взята с http://4dle.ru/2007/06/22/page,1,2,topnews_s_opredelennojj_kategorii.html Цитата Ссылка на сообщение Поделиться на других сайтах
Charli007 0 Опубликовано: 29 октября 2009 Рассказать Опубликовано: 29 октября 2009 (изменено) У тебя они я вижу идут столбиками то есть вертикально , а как тоже самое сделать только горизонтально ??? И сократить до трех новостей с одной категории ??? Очень прошу кто нибудь ответьте ??? Изменено 29 октября 2009 пользователем Charli007 Цитата Ссылка на сообщение Поделиться на других сайтах
inokentik 45 Опубликовано: 29 октября 2009 Рассказать Опубликовано: 29 октября 2009 Автор Можно сделать и в строчку и только 3 новости...Количество вот в этой тсроке меняется AND date >= '$this_month'AND date < '$this_month' + INTERVAL 1 MONTH ORDER BY rating DESC, comm_num DESC, news_read DESC, date DESC LIMIT 0,10"); а именно 0,10 меняй например на 0,3..... а само оформление вертикально или горизонтально меняй тут if ($config['allow_alt_url'] == "yes")$link = "<a {$go_page}href=\"".$config['http_home_url'].date('Y/m/d/', $row['date']).$row['alt_name'].".html\">".stripslashes($title)."</a>";else $link = "<a {$go_page}href=\"$PHP_SELF?newsid=".$row['id']."\">".stripslashes($title)."</a>";$topnews .= "".$link."<br />";} Цитата Ссылка на сообщение Поделиться на других сайтах
Charli007 0 Опубликовано: 29 октября 2009 Рассказать Опубликовано: 29 октября 2009 В общем без ста грамм не разберёшься видно... Цитата Ссылка на сообщение Поделиться на других сайтах
Captain 623 Опубликовано: 29 октября 2009 Рассказать Опубликовано: 29 октября 2009 (изменено) В общем без ста грамм не разберёшься видно... DESC LIMIT 0,10 (0,10 = 10 новостей) $topnews .= "".$link."<br />"; (Убери <br />, будет горизонально) По категориям не знаю, но эти строки меняю в engine/modules/topnews.php После изменений нужно кэш очистить. P.S.: Выпил все 350 Изменено 29 октября 2009 пользователем Captain Цитата Ссылка на сообщение Поделиться на других сайтах
netdog 0 Опубликовано: 6 января 2010 Рассказать Опубликовано: 6 января 2010 вот бы ещё картинки выводила topnews + category + img ) пытался моды прикрутить http://tudimon.com/2009/11/13/dle-xaki-dobavim-kratkoe-opisanie-i-kartinku-v.html http://dle.in.ua/page,1,3,6045-prodvinutyj-vyvod-rejtingovyx-novostej-s.html#comment не работает с ними этот мод ( Цитата Ссылка на сообщение Поделиться на других сайтах
inokentik 45 Опубликовано: 7 января 2010 Рассказать Опубликовано: 7 января 2010 Автор С картинками есть модуль на 4дле.ру раньше его использовал я... Но отпала необходимость в ТОП, сделал просто ПОСЛЕДНИЕ новости... Цитата Ссылка на сообщение Поделиться на других сайтах
netdog 0 Опубликовано: 7 января 2010 Рассказать Опубликовано: 7 января 2010 С картинками есть модуль на 4дле.ру раньше его использовал я... Но отпала необходимость в ТОП, сделал просто ПОСЛЕДНИЕ новости... на 4дле.ру много чего есть но что бы {topnews category="ID категории"} + картинки нет есть там ТИПО http://4dle.ru/mods/1147157525-modul.-news2cat-by-dj-avtosh.html вот такого но это не то. сделал просто ПОСЛЕДНИЕ новости(С) вы сделали последние новости (от 1 до 10...новости в блоке )с определеной категории и с картинками {newnews category="ID категории"} + картинки ? Цитата Ссылка на сообщение Поделиться на других сайтах
inokentik 45 Опубликовано: 7 января 2010 Рассказать Опубликовано: 7 января 2010 Автор да сделал. делается не так как вы написали а {custom}.... Это и подразумевает чт овыводит ПОСЛЕДНИЕ новости с нужной категории и с картинками и как хочешь... Цитата Ссылка на сообщение Поделиться на других сайтах
netdog 0 Опубликовано: 8 января 2010 Рассказать Опубликовано: 8 января 2010 наврно типо этого {custom} + переделанный shortstory Цитата Ссылка на сообщение Поделиться на других сайтах
inokentik 45 Опубликовано: 9 января 2010 Рассказать Опубликовано: 9 января 2010 Автор Да так и есть, создаете еще один шаблон новости, делайте его каким угодно и потом выводите там гед вам угодно {custom category="номер категории" template="название шаблона" aviable="global" from="0" limit="количество новостей" cache="yes"} И будет вам счастье Цитата Ссылка на сообщение Поделиться на других сайтах
netdog 0 Опубликовано: 26 января 2010 Рассказать Опубликовано: 26 января 2010 Да так и есть, создаете еще один шаблон новости, делайте его каким угодно и потом выводите там гед вам угодно {custom category="номер категории" template="название шаблона" aviable="global" from="0" limit="количество новостей" cache="yes"} И будет вам счастье а интересно как сделать чтобы картинки в этот блоке ...template="название шаблона"...смотрелись как бы привью shortstory и fullstory, грубо говоря как сделать превью новости и что бы отображалась там где надо. Цитата Ссылка на сообщение Поделиться на других сайтах
inokentik 45 Опубликовано: 27 января 2010 Рассказать Опубликовано: 27 января 2010 Автор По-моему можно например в файле стилей прописать класс ну для короткой новости и там прописать для картинки типа выравнивание по левому краю по умолчанию и чтоб текст обтекал ее... И в шаблоне новости прописать этот класс... Но я обычно теперь делаю картинку пихаю в дополе, а уже само допполе вывожу именно там где мне надо... Цитата Ссылка на сообщение Поделиться на других сайтах
kolyma 2 Опубликовано: 28 января 2010 Рассказать Опубликовано: 28 января 2010 Народ.. а есть как популярных новостей из опр. каткгорияй для 8.2? Вышеописанный пример не работает Цитата Ссылка на сообщение Поделиться на других сайтах
inokentik 45 Опубликовано: 29 января 2010 Рассказать Опубликовано: 29 января 2010 Автор Я это делал на 7.5, на 8.2 не пробывал... Цитата Ссылка на сообщение Поделиться на других сайтах
kolyma 2 Опубликовано: 17 апреля 2010 Рассказать Опубликовано: 17 апреля 2010 Все работает.. а как еще вывести название категории? Цитата Ссылка на сообщение Поделиться на других сайтах
inokentik 45 Опубликовано: 18 апреля 2010 Рассказать Опубликовано: 18 апреля 2010 Автор А вот это уже не знаю... Искать, искать и еще раз искать Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.