Модуль весьма спецефический, и нужен будет не всем. Писался он специально для моего проекта. С автором решили выкинуть его в паблик. Модуль помогаем выводить информер новостей из определённой категории. Более подробнее внутри. Модуль весьма спецефический, и нужен будет не всем. Писался он специально для моего проекта. С автором решили выкинуть его в паблик. Немного прелюдии, что бы было понятнее для чего модуль делался. Есть СДЛ, на главной которого публикуется контент для смартфонов. Появилась необходимость сделать раздел с новостями. Но публиковать их на главной было нелогично, смешивать контент с новостями. Единственной идеей было, организовать информер который бы выводил в небольшом блоке на главной (и на всех страницах сайта) эти самые новости (см. скрин). Что делает модуль: Выводит в указанном месте "превью" кратких новостей из определённой категории (см. скрин). Вывод новостей кэшируется. Умеет: - выводить уменьшенную картинку из краткой (новая картинка не создается, берется картинка из краткой нвоости и ей присваивается принудительный размер, который настраивается в файле модуля). - выводит название новости (в название вбивается ссылка на полную новость). - выводит описание новости взятое из краткой новости. Описание обрезается достигнув предела символов (предел настраивается в файле модуля), после чего ставится "..." а за ними идет ссылка "Подробнее", которая также ведет на полную новость. Установка: На всякий случай метод утсановки также помещен в архив. 1. Файл модуля news2cat.php закинуть в engine/modules/ 2. Затем в engine/init.php Находим: ?> Выше вставляем: require_once ENGINE_DIR.'/modules/news2cat.php'; 3. в index.php Находим: $tpl->load_template('main.tpl'); Ниже вставляем: $tpl->set ( '{newsp}',$newsp); 4. Далее в main.tpl в нужном месте добавляем тег: {newsp} Всё. Настройки модуля: Все настройки производятся непосредственно в самом файле модуля news2cat.php Ищем: $db->query("SELECT id, title, date, alt_name, autor, short_story, category, flag FROM " . PREFIX . "_post WHERE approve='1' AND category = '45' ORDER BY date DESC LIMIT 0,3"); Выбираем нужную категорию. AND category = '45' Цыфра 45, отвечает за номер категории из которой будут тащится новости. Меняем на свой. Кол-во новостей в информере. ORDER BY date DESC LIMIT 0,3 Цифра 3, это кол-во новостей в информере. Как на скрине, так и в файле, по умолчанию стоит вывод 3-х новостей. Меняем на свое. Макс. размер описания (в символах). Находим: $text = substr ($row['short_story'], 0, 350). Цифра 350, это максимум символов в названии и описании, после чего идет обрезка и добавляется "...". Далее вывод картинок. Ищем: $text = preg_replace ("'[img](.*?)[/img] [img]$1[/img] $title", $text); Размер картинки задается здесь: width=65 height=49 оответственно ширина и высота уменьшеной картинки. Меняем на свое. По настройкам вроде бы всё. --- Замечу, что также можно организовать 2 и более информеров. Например (пример взят с потолка). Вы организовали на сайте вывод новостей. Но захотели зделать такой же вывод и, допустим, обзоров различной техники. Делаем копию файла модуля news2cat.php и преименовываем, например в review2cat.php. Открываем review2cat.php и заменяем все слова: newsp на reviewsp Закидываем review2cat.php в engine/modules/. И далее по инструкции, заменяя название путей и переменные. Т.е. В engine/init.php Находим: ?> Выше вставляем: require_once ENGINE_DIR.'/modules/review2cat.php'; В index.php Находим: $tpl->load_template('main.tpl'); Ниже вставляем: $tpl->set ( '{reviewsp}',$reviewsp); И в main.tpl в нужном месте добавляем тег: {reviewsp} И так далее сколько угодно раз --- Модуль тестировался на DLE 7.0. На 2-х разных шаблонах. Корректно работает в последних браузерах Opera, IE, Chrome, Firefox. Демо: на скрине. Идея моя, вся разработка dj-avtosh (за что ему большое спасибо, толковый парень). Скачать-Download: Depositfiles.com
При копировании материалов ссылка на источник http://1uoz.3dn.ru/ обязательна |