ПафНутиЙ-Блог » Модули » Advanced Top - Расширенный топ новостей для DLE (устарел)

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

14.06
107
22087
Представляю Вашему вниманию новый модуль для 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.Всё! Остальная нужная информация прокомментирована в файле модуля.

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

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

  • Block.Pro - расширенный вывод блоков с новостями для DLE
  • Block.Pro 2.4 - расширенный вывод блоков с новостями для DLE (устарел)
  • Хак - расширенный вывод related и custom новостей + картинка
  • Большой пост о Block.Pro.3 или как с лёгкостью заменить custom, related-news и topnews в DLE 9.6-10.0 всего одной строкой.
Закрыть

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

+

Комментарии

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

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

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

Во-первых - шаблонизатор - это лишняя нагрузка, а я не сторонник этого.
во-вторых - что мешает заключить блок с топом в блок с уникальным ID и задать оформление через CSS. Остальное всё настраивается в строке подключения smile
Toonik
Toonik 17 июня 2011 11:16
Ответов: 0 #803
то есть порядок: коменты, имаджи и сама новость через код оформляются. так?
ПафНутиЙ
ПафНутиЙ 17 июня 2011 12:04
Ответов: 0 #804
да, это сделано для упрощения скрипта.
$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
Ответов: 0 #805
Модуль отличный, только вот после 3 дней использования не смог вообще зайти на сайт с ошибкой:
"Not Supported File! Thumbnails can only be made from .jpg, gif and .png images!"
устанавливал модуль точно по инструкйции.
как только удалил сайт сразу заработал.
ПафНутиЙ
ПафНутиЙ 17 июня 2011 14:34
Ответов: 0 #806
Это из-за того, что картинка в новости лежит не на хостинге.
unibronga
unibronga 17 июня 2011 14:48
Ответов: 0 #807
ПафНутиЙ,
а можно их как-то исключить? или задать определенную категорию для показа?
а то когда прописываю $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
Ответов: 0 #808
Кеш надо просто очистить :)
ну и плюс переменная block_num должна иметь уникальное значение для каждого блока, иначе будет браться уже существующий файл кеша и изменений вы не увидите.
Картинки никак не исключишь выборочно. только правкой самого модуля, например добавить условие для отбора картинок, но это усложнение модуля, да и картинки надёжнее на собственном хостинге хранить, чем зависеть от кого либо.
unibronga
unibronga 17 июня 2011 21:58
Ответов: 0 #809
кеш чистил не помогало, блок был всего один поэтому переменную и не менял. На счет картинок согласен, сейчас все на сервере, просто попались новости видимо из старых.
ПафНутиЙ, подскажите пожалуйста как будет выглядеть строка вставки блока если используется только одна категория, к примеру "Игры"?
Модуль очень нравится ))) не хочется от него отказываться.
ПафНутиЙ
ПафНутиЙ 17 июня 2011 22:05
Ответов: 0 #810
Заходим в админку, смотрим 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
Ответов: 0 #811
Огромнейшее спасибо, все работает :)
strelok08
strelok08 26 июня 2011 12:15
Ответов: 0 #825
А модуль может выводить картинку из дополнительных полей?
Nicola1
Nicola1 26 июня 2011 12:43
Ответов: 0 #826
Все делаю по мануалу, но в итоге сайт не открывается, выдает сообщение "Невозможно загрузить шаблон: enginemodulesadv_topblock_num1img_show1t_img_w220t"... Как исправить?
Версия DLE - 8.0
Nicola1
Nicola1 26 июня 2011 13:24
Ответов: 0 #827
и еще... про значение переменной block_num... на что ориентироваться при ее указаниии и откуда брать?
как я понял вышеизложенная мной ошибка указывает на то, что в шаблон не подключаются php скрипты.Поэтому двиг воспринимает php скрипт как TPL шаблон. Но как это исправить? Подскажите пожалуйста...
ПафНутиЙ
ПафНутиЙ 26 июня 2011 14:17
Ответов: 0 #828
strelok08,
Да, выводится значние указанного допполя, если это будет картинка - выведет картинку.
Nicola1,
Всего навсего нужно обновить двиг до актуальной версии smile
поддержка api внедрена только в версии 8.2 если не ошибаюсь.
vov41k
vov41k 27 июня 2011 01:38
Ответов: 0 #832
За модуль автору респект!

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

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

$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
Ответов: 0 #834
Если установить два блока на сайт то получается проблема.
То есть если добавлять новость то очищается кэш и в блоках заново создаются картинки и часто просто ошибка 504. В день на сайт добавляется много новостей и такая картинка получается очень часто. Можно как то сделать что бы после установки с генерировались, а потом обновлялись например в 4 часа ночи?
ПафНутиЙ
ПафНутиЙ 27 июня 2011 15:23
Ответов: 0 #835
Да, заменить путь сохранения картинки - например создать в папке uploads папку top с правами 777, а в скрипте заменить путь
/engine/cache/
в двух местах на
/uploads/top/
ну и cron настроить на очистку папки раз в неделю.
vov41k
vov41k 27 июня 2011 16:39
Ответов: 0 #836
Точно %))))) Спасибо.
kibal4ish
kibal4ish 3 июля 2011 21:34
Ответов: 0 #837
Добрый день
Модуль классный, вот только проблемка возникла, на dle 9.2 не показываются картинки и не выводится число коментов, как исправить? =(
kibal4ish
kibal4ish 3 июля 2011 23:49
Ответов: 0 #839
сам доделал, спасибо, отличный мод
не подскажете, как сделать так, что если у новости нет картинки, то выдавалась бы картинка по умолчанию...
ПафНутиЙ
ПафНутиЙ 4 июля 2011 08:41
Ответов: 0 #840
Закинуть в папку images текущего шаблона файл nothumb.gif
Nicola1
Nicola1 6 июля 2011 22:21
Ответов: 0 #844
Отличный модуль, спасибо! вот только пока ни как толком не могу поменять местоположение картинки, чтобы вывод новости из топа приобрел вид: титл, картинка, описание...
ПафНутиЙ
ПафНутиЙ 6 июля 2011 22:28
Ответов: 0 #845
$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
Ответов: 0 #846
Hа dle 9.2 не показываются картинки и не выводится число коментов, как исправить? recourse
ПафНутиЙ
ПафНутиЙ 7 июля 2011 07:12
Ответов: 0 #847
скорее всего изменить строчку подключения т.к. модуль работает нормально даже на 8.5
Awwa
Awwa 7 июля 2011 12:29
Ответов: 0 #848
Я вставлял как рекомендовалось
{include file="engine/modules/adv_top.php?&block_num=1"}
ПафНутиЙ
ПафНутиЙ 7 июля 2011 12:54
Ответов: 0 #849
Это вывод по умолчанию - а по умолчанию картинки и кол-во коментов не выводятся.


Цитата: ПафНутиЙ
А это простой пример вот такой вот строчки кода.
{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
Ответов: 0 #850
А теперь выводится картинка с надписью "Нет изображения" хотя все новости с картинками. Кол-во комментов выводится. Не знаю в чём причина.

Информация

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