Cent 4 Опубликовано: 11 октября 2007 Рассказать Опубликовано: 11 октября 2007 Уважаемые! На сайте есть стандартный вывод новостей как это устроено в движке. Но мне в определенном месте еще нужно выводить отдельно новости из определенной категории. Как это реализовать? Спасибо! Цитата Ссылка на сообщение Поделиться на других сайтах
KorrDon 0 Опубликовано: 11 октября 2007 Рассказать Опубликовано: 11 октября 2007 (изменено) в смысле просто еще 1 блок в котором будут краткие новости или поделить главную полосу поплам ? если с определенной категориии то вот так я делал , просто переделал модуль top news в index.php перед $config['http_home_url'] = reset(explode("index.php", $_SERVER['PHP_SELF'])); добавляем if ( stristr( $tpl->copy_template, "{topnews" ) ) { $tpl->copy_template = preg_replace( "#\\{topnews category=['\"](.+?)['\"]\\}#ies", "topnews_print('\\1')", $tpl->copy_template ); } и в файле engine/modules/functions.php добавляем функцию function topnews_print ($custom_category){ global $db; $custom_category = $db->safesql(str_replace(',', '|', $custom_category)); if(!defined('DATALIFEENGINE')) { die("Hacking attempt!"); } $topnews = dle_cache("topnews", $config['skin']); if (!$topnews) { $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 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", $topnews, $config['skin']); } return $topnews; } вставляем тег {topnews category="ID категории"} DESC LIMIT 0,10 эта цифра в коде ну 0.10 соотвецтвует количеству выводимых новостей в колонке. блин , искал фенечку для своего портала одну , зашол на твой сайт и цбил там минут 10 ))))) http://cityfun.ru/2007/10/11/kak-nkvd-dobi...priznanijj.html вот на этой статье ))) Изменено 11 октября 2007 пользователем KorrDon Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 094 Опубликовано: 12 октября 2007 Рассказать Опубликовано: 12 октября 2007 для этого предусмотрен стандартный тег {custom} его параметры и описание даны в документации Цитата Ссылка на сообщение Поделиться на других сайтах
dojino 0 Опубликовано: 13 октября 2007 Рассказать Опубликовано: 13 октября 2007 для этого предусмотрен стандартный тег {custom} его параметры и описание даны в документации {custom} - это хорошо, но хотется чтобы у дле была возможность выводить новости несколькими способами: например в нужной категории вывод новостей в несколько колонок, а в другой (тоже нужной ) чтоб в одну. Если это нельзя организовать в стандартной версии - то сделайте за отдельную плату такие дополнения. Хочется именно от разработчика получать такие модули, хаки, и пр. Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 094 Опубликовано: 13 октября 2007 Рассказать Опубликовано: 13 октября 2007 например в нужной категории вывод новостей в несколько колонок, а в другой (тоже нужной ) чтоб в одну. Невижу препятствий для такого вывода. В две колонки легко вы водится стандартными средствами, нужно просто сделать правильный шаблон и знать HTML Цитата Ссылка на сообщение Поделиться на других сайтах
dojino 0 Опубликовано: 13 октября 2007 Рассказать Опубликовано: 13 октября 2007 (изменено) Невижу препятствий для такого вывода. В две колонки легко вы водится стандартными средствами, нужно просто сделать правильный шаблон и знать HTML - это можно сделать без изменения файлов скрипта??? ОК - тогда можно какой нибудь простейший пример шаблона в 2 колонки. (насколько я понимаю, то править надо shortstory.tpl) P.S. Излазил весь форум, и на эту тему нашел только решение "хирургическим вмешательством" в код движка. Хотелось бы туда не лазить. (в код) Изменено 13 октября 2007 пользователем Mitrik Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 094 Опубликовано: 14 октября 2007 Рассказать Опубликовано: 14 октября 2007 - это можно сделать без изменения файлов скрипта??? совершенно верно ОК - тогда можно какой нибудь простейший пример шаблона в 2 колонки. (насколько я понимаю, то править надо shortstory.tpl) тоже верно, пример <div style="width:50%;float:left;">тут код шаблона</div> это называется плавающие слои. Цитата Ссылка на сообщение Поделиться на других сайтах
dojino 0 Опубликовано: 15 октября 2007 Рассказать Опубликовано: 15 октября 2007 Спасибо большое! Я отдавал предпочтение таблицам, но почитал немного инфы - оказалось что верстка слоями "облегчает" сайт для загрузки браузерами, и что еще актуально для наших юзеров - для модэмной связи. Придется учиться работать со слоями. More thanks! Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 094 Опубликовано: 15 октября 2007 Рассказать Опубликовано: 15 октября 2007 Я отдавал предпочтение таблицам, но почитал немного инфы - оказалось что верстка слоями "облегчает" сайт для загрузки браузерами, и что еще актуально для наших юзеров - для модэмной связи. Придется учиться работать со слоями. ничего не мешает сделать <div style="width:50%;float:left;">тут код шаблона в таблице</div> Цитата Ссылка на сообщение Поделиться на других сайтах
dojino 0 Опубликовано: 9 ноября 2007 Рассказать Опубликовано: 9 ноября 2007 Спасибо celsoft за уделенное внимание этой теме. ничего не мешает сделать Код <div style="width:50%;float:left;">тут код шаблона в таблице</div> Это мне понятно стало сразу, но я решил пойти дальше и сделал самостоятельно шаблон почти полностью на слоях, правда частично и таблицами (поиск, юзеринфо...) + CSS, пока что на Дэнвере, но как запущу сайт - покажу. Очень помог в этом деле (по слоям и CSS) сайт _htmlbook.ru - за что большое спасибо этому ресурсу. Добавлю что сайты на таких шаблонах бестрее грузятся и лучше индексируются поисковиками, т.к. пока не загрузится весь контент заключенный в таблице - таблица не покажется, ну и еще много чего. Я по-новому начал смотреть на верстку сайтов и уделять этому больше внимания. Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.