» » Advanced Top - Расширенный топ новостей для DLE (устарел)

Advanced Top - Расширенный топ новостей для DLE (устарел)

14.06
107
29 921
Представляю Вашему вниманию новый модуль для DLE - Advanced Top - Расширенный топ новостей.

Модуль предназначен для вывода неограниченного числа блоков с разнообразными топами новостей у себя на сайте.
Допустим Вам требуется вывести на вашем любимом варезнике сайте топ видео/игр/музыки за неделю/месяц/год - тогда модуль расширенного вывода новостей, то, что Вам нужно.

Для наглядности взгляните на два скриншота.

Это обычный топ новостей:
Advanced Top - Расширенный топ новостей для DLE (устарел)


А это простой пример вот такой вот строчки кода.
{include file="engine/modules/adv_top.php?&block_num=1&img_show=1&t_img_w=220&t_img_h=50&showcomments=1"}

Advanced Top - Расширенный топ новостей для DLE (устарел)


Особенности модуля:
- Лёгкая установка модуля, подключение через include.
- Все настройки модуля являются необязательными, указываются непосредственно в строке подключения блока.
- Кеширование каждого блока в отдельный файл, картинки кашируются в папку с общим кешем, так что вам не придётся переодически удалять мусор.
- Произвольное количество блоков с топами на страницах.
- Модуль не использует tpl шаблонов, что немного увеличивает скорость работы модуля.
- Оформление модуля производится через CSS.

Возможности модуля:
- Задание временного интервала для отбора новостей. Указывается в днях, от 1 до бесконечности.
- Отбор новостей из определённой категории/категорий. Отдельно настраивается для каждого блока.
- Произвольное количество новостей в каждом блоке.
- Количество символов в заголовке новости.
- Количество символов в новости.
- Вывод значения из определённого дополнительного поля. Например можно вывести таким образом ссылку на картинку, или видео.
- Возможность показа количества комментариев к новости.
- Вывод картинки из новости с указанием ширины и высоты (обрезается через crop).

Установка:
1. Копируем файл adv_top.php в папку /engine/modules/.
2. Открываем файл /engine/cache/.htaccess и заменяем две написанных там строчки на:
Order Deny,Allow
#Deny from all
<Files *.tmp>
Deny from all
</Files>
<Files ".(jpg|gif|png)$">
Allow from all
</Files>

Это для того, чтобы был доступ на чтение картинок из папки кеша.
3. Подключаем модуль строкой
{include file="engine/modules/adv_top.php?&block_num=1"}

где обязательно нужно указывать уникальное значение для переменной block_num, цифры или буквы, разницы нет.

4.Всё! Остальная нужная информация прокомментирована в файле модуля.

Как всегда жду пожеланий.

Похожие материалы

Комментарии

Toonik
Toonik 16 июня 2011 08:40
ну, во-первых, с возвращением вас! (:

во-вторых, штука интересная! Но шаблонизатор не помешал бы.
ПафНутиЙ
ПафНутиЙ 16 июня 2011 13:51
Цитата: Toonik
ну, во-первых, с возвращением вас! (:

спасибо
Цитата: Toonik
во-вторых, штука интересная! Но шаблонизатор не помешал бы.

Во-первых - шаблонизатор - это лишняя нагрузка, а я не сторонник этого.
во-вторых - что мешает заключить блок с топом в блок с уникальным ID и задать оформление через CSS. Остальное всё настраивается в строке подключения smile
Toonik
Toonik 17 июня 2011 11:16
то есть порядок: коменты, имаджи и сама новость через код оформляются. так?
ПафНутиЙ
ПафНутиЙ 17 июня 2011 12:04
да, это сделано для упрощения скрипта.
$top_adv .= $image.'<div class="t_news"><h5><a href="'.$t_link.'" title="'.$full_title.'">'.$t_title.'</a> '.$t_comm_num.'</h5><div class="t_story">'.$t_story.'</div>'.$xf_t_val.'</div>';

вот в этой строке определяется весь порядок вывода каждой новости, картинка определяется чуть выше. Поменять порядок можно руками в php, а можно и через css.
unibronga
unibronga 17 июня 2011 14:14
Модуль отличный, только вот после 3 дней использования не смог вообще зайти на сайт с ошибкой:
"Not Supported File! Thumbnails can only be made from .jpg, gif and .png images!"
устанавливал модуль точно по инструкйции.
как только удалил сайт сразу заработал.
ПафНутиЙ
ПафНутиЙ 17 июня 2011 14:34
Это из-за того, что картинка в новости лежит не на хостинге.
unibronga
unibronga 17 июня 2011 14:48
ПафНутиЙ,
а можно их как-то исключить? или задать определенную категорию для показа?
а то когда прописываю $top_cat в строчке вывода
{include file="engine/modules/adv_top.php?&block_num=1&img_show=1&t_img_w=80&t_img_h=100&showcomments=1"}
ничего не меняется :( либо я как-то не так пишу..
ПафНутиЙ
ПафНутиЙ 17 июня 2011 21:52
Кеш надо просто очистить :)
ну и плюс переменная block_num должна иметь уникальное значение для каждого блока, иначе будет браться уже существующий файл кеша и изменений вы не увидите.
Картинки никак не исключишь выборочно. только правкой самого модуля, например добавить условие для отбора картинок, но это усложнение модуля, да и картинки надёжнее на собственном хостинге хранить, чем зависеть от кого либо.
unibronga
unibronga 17 июня 2011 21:58
кеш чистил не помогало, блок был всего один поэтому переменную и не менял. На счет картинок согласен, сейчас все на сервере, просто попались новости видимо из старых.
ПафНутиЙ, подскажите пожалуйста как будет выглядеть строка вставки блока если используется только одна категория, к примеру "Игры"?
Модуль очень нравится ))) не хочется от него отказываться.
ПафНутиЙ
ПафНутиЙ 17 июня 2011 22:05
Заходим в админку, смотрим id категории Игры (например это категория с id=5)и в строку подключения пишем:
{include file="engine/modules/adv_top.php?&block_num=1&top_cat=5&img_show=1&t_img_w=80&t_img_h=100&showcomments=1"}

если же категорий несколько, то перечисляем их через тире, т.е. примерно так:
{include file="engine/modules/adv_top.php?&block_num=1&top_cat=1-2-3-12-13-15&img_show=1&t_img_w=80&t_img_h=100&showcomments=1"}
unibronga
unibronga 17 июня 2011 23:40
Огромнейшее спасибо, все работает :)
strelok08
strelok08 26 июня 2011 12:15
А модуль может выводить картинку из дополнительных полей?
Nicola1
Nicola1 26 июня 2011 12:43
Все делаю по мануалу, но в итоге сайт не открывается, выдает сообщение "Невозможно загрузить шаблон: enginemodulesadv_topblock_num1img_show1t_img_w220t"... Как исправить?
Версия DLE - 8.0
Nicola1
Nicola1 26 июня 2011 13:24
и еще... про значение переменной block_num... на что ориентироваться при ее указаниии и откуда брать?
как я понял вышеизложенная мной ошибка указывает на то, что в шаблон не подключаются php скрипты.Поэтому двиг воспринимает php скрипт как TPL шаблон. Но как это исправить? Подскажите пожалуйста...
ПафНутиЙ
ПафНутиЙ 26 июня 2011 14:17
strelok08,
Да, выводится значние указанного допполя, если это будет картинка - выведет картинку.
Nicola1,
Всего навсего нужно обновить двиг до актуальной версии smile
поддержка api внедрена только в версии 8.2 если не ошибаюсь.
vov41k
vov41k 27 июня 2011 01:38
За модуль автору респект!

Но, как сделать изображение кликабельным? То есть ссылкой на новость?
Еще можно было бы вывести категорию.

П.С. Как у Вас на сайте здесь ответы на комментарии выделяются отступами как на WordPress...
ПафНутиЙ
ПафНутиЙ 27 июня 2011 08:22
Находим строки:

$image = '<div class="t_image"><img src="'.$config['http_home_url']."engine/cache/".$file_name.'" alt="'.$ttl.'" /></div>';
    }else $image = '<div class="t_image"><img src="{THEME}/images/nothumb.gif" alt="'.$ttl.'" width="'.$t_img_w.'" height="'.$t_img_h.'" /></div>'; //Если в новости нет картинки - будет выводиться "заглушка"
    }

и заменяем на:

      $image = '<div class="t_image"><a href="'.$t_link.'" title="'.$full_title.'"><img src="'.$config['http_home_url']."engine/cache/".$file_name.'" alt="'.$ttl.'" /></a></div>';
    }else $image = '<div class="t_image"><a href="'.$t_link.'" title="'.$full_title.'"><img src="{THEME}/images/nothumb.gif" alt="'.$ttl.'" width="'.$t_img_w.'" height="'.$t_img_h.'" /></a></div>'; //Если в новости нет картинки - будет выводиться "заглушка"
    }

Цитата: vov41k
П.С. Как у Вас на сайте здесь ответы на комментарии выделяются отступами как на WordPress..

это только внешне так оформлено smile
vov41k
vov41k 27 июня 2011 15:05
Если установить два блока на сайт то получается проблема.
То есть если добавлять новость то очищается кэш и в блоках заново создаются картинки и часто просто ошибка 504. В день на сайт добавляется много новостей и такая картинка получается очень часто. Можно как то сделать что бы после установки с генерировались, а потом обновлялись например в 4 часа ночи?
ПафНутиЙ
ПафНутиЙ 27 июня 2011 15:23
Да, заменить путь сохранения картинки - например создать в папке uploads папку top с правами 777, а в скрипте заменить путь
/engine/cache/
в двух местах на
/uploads/top/
ну и cron настроить на очистку папки раз в неделю.
vov41k
vov41k 27 июня 2011 16:39
Точно %))))) Спасибо.
kibal4ish
kibal4ish 3 июля 2011 21:34
Добрый день
Модуль классный, вот только проблемка возникла, на dle 9.2 не показываются картинки и не выводится число коментов, как исправить? =(
kibal4ish
kibal4ish 3 июля 2011 23:49
сам доделал, спасибо, отличный мод
не подскажете, как сделать так, что если у новости нет картинки, то выдавалась бы картинка по умолчанию...
ПафНутиЙ
ПафНутиЙ 4 июля 2011 08:41
Закинуть в папку images текущего шаблона файл nothumb.gif
Nicola1
Nicola1 6 июля 2011 22:21
Отличный модуль, спасибо! вот только пока ни как толком не могу поменять местоположение картинки, чтобы вывод новости из топа приобрел вид: титл, картинка, описание...
ПафНутиЙ
ПафНутиЙ 6 июля 2011 22:28
$top_adv .= $image.'<div class="t_news"><h5><a href="'.$t_link.'" title="'.$full_title.'">'.$t_title.'</a> '.$t_comm_num.'</h5><div class="t_story">'.$t_story.'</div>'.$xf_t_val.'</div>';

заменить на:
$top_adv .= '<div class="t_news"><h5><a href="'.$t_link.'" title="'.$full_title.'">'.$t_title.'</a> '.$t_comm_num.'</h5>'.$image.'<div class="t_story">'.$t_story.'</div>'.$xf_t_val.'</div>';
Awwa
Awwa 7 июля 2011 06:45
Hа dle 9.2 не показываются картинки и не выводится число коментов, как исправить? recourse
ПафНутиЙ
ПафНутиЙ 7 июля 2011 07:12
скорее всего изменить строчку подключения т.к. модуль работает нормально даже на 8.5
Awwa
Awwa 7 июля 2011 12:29
Я вставлял как рекомендовалось
{include file="engine/modules/adv_top.php?&block_num=1"}
ПафНутиЙ
ПафНутиЙ 7 июля 2011 12:54
Это вывод по умолчанию - а по умолчанию картинки и кол-во коментов не выводятся.


Цитата: ПафНутиЙ
А это простой пример вот такой вот строчки кода.
{include file="engine/modules/adv_top.php?&block_num=1&img_show=1&t_img_w=220&t_img_h=50&showcomments=1"}

это я для кого писал?
Awwa
Awwa 7 июля 2011 14:48
А теперь выводится картинка с надписью "Нет изображения" хотя все новости с картинками. Кол-во комментов выводится. Не знаю в чём причина.

Добавить комментарий

Комментировать могут только зарегистрированные пользователи

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.