Block.Pro.2.5

29.03
334
34 439
Block.Pro.2.5


Block.Pro.2 - Расширенный вывод блоков с новостями для DLE

Модуль для удобного и гибкого вывода новостей на любой странице DLE-сайта

Версия DLE: 9.5 (на других не проверялся, но работать должен)

Версия модуля: 2.5

Дата релиза: 29.03.2012

Автор: ПафНутиЙ

Контакты: http://pafnuty.name, Google+ или email

Модуль распространяется бесплатно для частного и коммерческого использования

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

Основные возможности модуля

  • Вывод популярных (топ по комментариям, рейтингу, просмотрам или как стандартный топ в dle), похожих, случайных (с возможностью отключения кеширования блока) или последних новостей.
  • Подключение модуля одной строкой непосредственно любой в шаблон (через include).
  • Простая и очень гибкая настройка вывода каждого блока.
  • Кеширование каждого блока (обновление кеша при добавлении новости или комментария на сайт) с возможностью отключения кеша для каждого блока.
  • Настройка категорий для вывода новостей (вывод только из определённых категорий, игнорирование определённых категорий, вывод или ингорирование новостей из просматриваемой категории)
  • Вывод уменьшенной копии картинки (в т.ч. и вместе с оригинальной картинкой) из короткой новости или дополнительного поля (картинки берутся только из папки uploads текущего сайта).
  • Автоматическое создание папки для уменьшенных копий изображений и выставление нужных прав.
  • Обрезка заголовка новости до заданного количества символов.
  • Обрезка текста новости (до заданного количества символов или до конца слова).
  • Ввод иконок категории.
  • Можно задать временной интервал для отбора новостей (по умолчанию 30дней).
  • Можно задать каждому блоку свой шаблон, свою картинку-заглушку.
  • Поддержка всех тегов, используемых в шаблонах кратких новостей.
  • Поддержка фильтра (перекрестные ссылки) по допполям, реализованного в DLE9.5
  • Можно указать с какой по счету новости начать вывод (например с 4й по 15ю).
  • Возможность быстрого редактирования новостей прямо из блока, аналогично стандартному функционалу

Установка модуля

  1. Скопировать файл block.pro.2.php в папку engine/modules/
  2. Скопировать содержимое папки THEME в папку с текущим шаблоном сайта
  3. В нужном месте прописать строку подключения модуля с обязательными параметрами:
    {include file="engine/modules/block.pro.2.php?&block_id=BLOCK&template=blockpro"}
    Где: BLOCK - Уникальный идентификатор блока blockpro - имя шаблона, используемого для вывода
  4. Настроить дополнительные параметры строки подключения и шаблон

Для вывода похожих новостей

  1. Отключить стандартный вывод похожих новостей в админке (Настройка системы » Оптимизация запросов к базе данных » Отображение похожих новостей » "нет")
  2. Открыть файл engine/modules/show.full.php перед
    if( $config['related_news']
    вставить
    /*Block.Pro - relatednews*/
    $block_id = 'related_'.$row['id']; //Не трогать!
    $relatedpro = "1"; //Не трогать!
    $template="relatednews"; // Имя шаблона (можно менять)
    include_once ENGINE_DIR . '/modules/block.pro.2.php';		
    /*Block.Pro - relatednews*/
  3. Настроить дополнительные переменные подключения модуля (Переменные приведены в таблице ниже. При вставке необходимо заменять символ & на $) и шаблон
  4. В ШАБЛОНЕ ПОЛНОЙ НОВОСТИ НИЧЕГО ДОПОЛНИТЕЛЬНО ПРОПИСЫВАТЬ НЕ НУЖНО! модуль выводится через стандартный тег похожих новостей.

Переменные строки подключения

Все переменные указываются непосредственно в строке подключения модуля.

В таблице дано описание возможных для использования переменных

Наименование переменной Значение по умолчанию Описание Примечание
&block_id   Обязательная переменная. Уникальный идентификатор блока любое, уникальное для каждого блока значение
&template   Обязательная переменная. Имя шаблона для вывода блока указывается только имя, без расширения .tpl
&day 30 Количество дней, за которое осуществляется отбор новостей. Если указать ноль (0) - будут браться новости за всё время. Переменная автоматически принимает нулевое значение, если в строке подключения определена переменная &last, &relatedpro или &rndom
&show_cat   Категория/категории для отбора новостей.

Категории указываются через запятую.

Если указать &show_cat=this - новости будут браться только из просматриваемой категории.

&ignore_cat   Модификатор переменной &show_cat. превращает указанные в &show_cat категории в игнорируемые. Для активации модификатора достаточно его определить (например &ignore_cat=y)
&start_from 0 Начало диапазона отбора новостей.  
&news_num 10 Количество новостей в блоке  
&img_xfield   Имя дополнительного поля для получения уменьшенного изображения.

Переменную нужно определять только тогда, когда требуется выводить картинку из дополнительного поля.

Одновременный вывод картинки из краткого содержимого и допполя невозможен.

В допполе должна лежать прямая ссылка на изображение.

&img_size 60x60 Размер уменьшенной копии изображения. (Ширина X Высота) Допустимо указывать одну цифру (например 100). тогда изображение будет уменьшено по большей стороне. при указании нуля (&img_size=0) изображение обрезаться не будет.
&noimage noimage.png Имя и расширение для картинки-заглушки, в случаи отсутствия изображения в новости. Картинка-заглушка должна располагаться в папке images текущего шаблона сайта.
&nocache   Модификатор, отключающий использование кеша для блока. Для активации модификатора достаточно его определить (например &nocache=y)

 

&random

&last

&top_comm

&top_rating

&top_views

 

Варианты сортировки новостей.

Случайным образом

По дате добавления

Самые комментируемые

Самые рейтинговые

Самые часто просматриваемые

По умолчанию выводятся топ-новости (по аналогии со стандартным топом DLE)

Недопустимо использование нескольких вариантов сортировки одновременно.

&wordcut   Модификатор, отключающий обрезку текста новости до конца слова и включающий обрезку до заданного количества символов. Для активации модификатора достаточно его определить (например &wordcut=y)
$relatedpro   Модификатор активирует механизм отображения похожих новостей. Указывается только при подключении модуля в файле show.full.php для вывода похожих новостей. Для активации модификатора достаточно его определить (например $relatedpro=y;)


Теги шаблона

В таблице приведены возможные для использования в шаблоне теги и их описание.

Обозначение тега шаблона Описание Примечание
{link-category} Ссылка/ссылки на категории  
{category} Наименование категории  
{category-icon} Иконка/иконки категорий При отсутствии иконки берётся картинка {THEME}/images/no_icon.gif
[xfvalue_name] Значение дополнительного поля "name", где "name" название дополнительного поля  
[xfgiven_name] [xfvalue_name] [/xfgiven_name] Выводится дополнительное поле "name", если поле не пустое, если поле не имеет значения, то текст просто вырезается  
[xfnotgiven_name] текст [/xfnotgiven_name] Выводят текст указанный в тегах, если дополнительное поле не было задано при публикации новости, где "name" это имя дополнительного поля  
{image-X} Выводит URL уменьшенной картинки находящейся в краткой новости, где Х это номер картинки в новости, например {image-1} выведет URL первой картинки в краткой новости  
{image_original} Выводит URL оригинальной картинки, указанной в {image-X}  
[image_original] текст [/image_original] Выводят текст указанный в тегах, если есть {image_original}  
[not_image_original] текст [/not_image_original] Выводят текст указанный в тегах, если нет {image_original}  
{rating} Выводит рейтинг  
{vote-num} Выводит количество проголосовавших  
[profile] текст [/profile] Выводят прямую ссылку на профиль автора публикации, без использования всплывающего окна минипрофиля.  
{login} Выводит логин пользователя добавившего новость в виде обычной текстовой информации без ссылок на профиль и карточку пользователя.  
{author} Ссылка на автора новости  
{date} Дата новости в формате, установленном в настройках движка  
{date=X} Дата новости в пользовательском формате  
Block.Pro.2.5 Заголовок новости  
{title limit="X"} Заголовок новости, обрезанный до X символов.  
{text} Текст новости (аналог {short-story})  
{text limit="X"} Текст новости, обрезанный до указанного X количества символов, при этом обрезание текста происходит до последнего логического слова, а не обрывает текст на середине слова.  
{full-link} URL полной новости  
{comments-num} Количество комментариев к новости  
{views} Количество просмотров новости  
[edit] текст [/edit] Ссылка на редактирование новости  



Техническая поддержка модуля осуществляется только по указанным контактным данным

Но это не означает, что техподдержка будет оказана :)

P.S. Пример использования модуля вы можете лицезреть на этом сайте, прямо чуть ниже ссылки на скачивание выводятся похожие новости.

ВНИМАНИЕ!

Все обсуждения модуля теперь только в этой теме или на сайте blockpro.ru

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

Комментарии

sadry47
sadry47 10 мая 2012 12:44
Здравствуйте, а на 9,2 работает модуль?
ПафНутиЙ
ПафНутиЙ 10 мая 2012 20:33
Попробуйте, я не проверял, но работать должен.
wincloa
wincloa 17 мая 2012 20:40
А можно инструкцию по установке нормальную с 3 по 4 пункт, 3 - куда писать? 4 Что на что заменять поменял на название шаблона пишет нету
ПафНутиЙ
ПафНутиЙ 18 мая 2012 09:06
Инструкция вполне нормальная и доходчивая.
3 - куда писать?

Писать туда, где нужно вывести блок.
4 Что на что заменять поменял на название шаблона пишет нету

А шаблон есть?
wincloa
wincloa 19 мая 2012 23:06
Ну хотя б для примера указать, то вообще бес понятия.
Шаблон есть
ПафНутиЙ
ПафНутиЙ 20 мая 2012 09:43
Ну напишите в main.tpl прямо перед {content}
А вообще всё зависит от того, что требуется получить, другими словами что и куда надо вывести - не ясно.
wincloa
wincloa 20 мая 2012 23:10
Так и попробую
bratoz
bratoz 21 мая 2012 02:41
Блин, что-то не хочет работать на 9.6
Хотел вывести похожие новости, но выдаёт ошибку mysql. Причём ошибка пустая , там нету информации ни какой...

И s-blocks тоже вроде не катит на 9.6 :((
ПафНутиЙ
ПафНутиЙ 21 мая 2012 20:06
А модуль откуда качал?
bratoz
bratoz 22 мая 2012 04:06
От сюда качал. Актуальную версию.

Я уже через стандартные теги сделал топ и похожие новости, но там картинки убого сжимаются...
Alexx
Alexx 22 мая 2012 21:26
Доброго времени суток!

Что-то никак не соображу - как вывести все новости из просматриваемой категории (&show_cat=this) за исключением одной (первой по времени) без использования &day.
&start_from=1 работает только если не добавляются комментарии.

Заранее спасибо.
ПафНутиЙ
ПафНутиЙ 22 мая 2012 22:39
версия dle и строка подключения наверняка прояснят ситуацию.
Alexx
Alexx 22 мая 2012 22:50
9.5

{include file="engine/modules/block.pro.2.php?&block_id=BLOCK&template=grid&show_cat=this&start_from=1&nocache=y"}
ПафНутиЙ
ПафНутиЙ 22 мая 2012 22:53
{include file="engine/modules/block.pro.2.php?&block_id=BLOCK&template=grid&show_cat=this&start_from=1&last=y"}
Alexx
Alexx 22 мая 2012 23:11
Спасибо, все конечно элементарно.
Поменял date DESC на date ASC и все заработало.

Еще раз большое спасибо, иногда очевидные вещи в упор не видишь )))
Daiv
Daiv 23 мая 2012 15:16
Версия DLe 9.6
Block pro 2.6
Строка подключения:
{include file="engine/modules/block.pro.2.php?&block_id=BLOCK&template=blockpro"}

Результат:
Где то косяк! Проверь правильность строки подключения. Возможно просто нет новостей за последние 30 дней.
ПафНутиЙ
ПафНутиЙ 23 мая 2012 15:32
КЭП как бэ намекает ))))
попробуйте
{include file="engine/modules/block.pro.2.php?&block_id=BLOCK&template=blockpro&last=y"}
Daiv
Daiv 23 мая 2012 18:40
Тот же результат
Редирект не может влиять?
офф топ . Отправка комментария идет очень долго.
ПафНутиЙ
ПафНутиЙ 23 мая 2012 22:48
Обновил модуль.
Daiv
Daiv 24 мая 2012 12:16
Благодарю заработало.
Почему картинки сжимает до 10*10 пикселей? демо тот же сайт
bratoz
bratoz 25 мая 2012 03:16
Теперь на DLE 9.6 работать будет без проблем???
ПафНутиЙ
ПафНутиЙ 25 мая 2012 07:13
Искренне надеюсь на это)
Zidein
Zidein 26 мая 2012 16:59
Привет, спасибо за модуль, все супер.
Изначально ставил на 9,5, на лакалке обновился до 9,6, и появилась проблема.

Вывожу модуль так:
{include file="engine/modules/block.pro.2.php?&block_id=blockniz&template=blockniz1&category=8&news_num=3&random=y"}


все выводится так ка и нужно, но если дублирую модуль так:
{include file="engine/modules/block.pro.2.php?&block_id=block1&template=block&category=8&news_num=3&random=y"}


то он в первом модули выводит только 1 блок.
а во тором сначала первый, с его настройками, и следом второй с другими настройками.

Подскажи. в чем ошибку допустил?
bratoz
bratoz 27 мая 2012 20:57
У меня тоже что-то типо такой проблем.
Вывожу похожие новости стандартным тегом и следом вкладка популярные новости из этой же категории..

Вот пример
http://videotuts.ru/2729-osveschenie-3d-sceny-v-poser.html

p.S.
Решил свою проблему. В строку прописал &show_cat=this
P.S.S
Опять не работает...
Странно ппц.)
P.S.S.S
После того как меняю block_id, то всё работает, но после того как вношу какие-то изменения, то перестаёт работать (например прописал &news_num=10) и то выводилось криво.., где-то за место 10 - 20, где-то вообще 2...
P.S.S.S.S.
Последнее..
Вот например тут в популярных выводиться аж 20, заместо 10.
http://videotuts.ru/2722-the-final-charge.html
Вот тут только 1, и то после повторяющегося блока похожих...
http://videotuts.ru/2729-osveschenie-3d-sceny-v-poser.html

В некоторых уроках всё работает нормально...
В block.pro2.php поменял только выводить за последние 200 дней...

ПафНутиЙ
ПафНутиЙ 27 мая 2012 21:15
Попробуй перед
$db->free();
раскомментировать строку
//unset($tplb);
Сейчас не могу проверить на движке.
bratoz
bratoz 27 мая 2012 21:43
Стало лучше, но вот тут всё равно 1 новость осталась
http://videotuts.ru/2729-osveschenie-3d-sceny-v-poser.html

Вот строка подключения такая

{include file="engine/modules/block.pro.2.php?&block_id=top3&template=blockpro&top_views&img_size=123x70$relatedpro=n&show_cat=this&news_num=10"}
ПафНутиЙ
ПафНутиЙ 27 мая 2012 22:21
{include file="engine/modules/block.pro.2.php?&block_id=top3&template=blockpro&top_views=y&img_size=123x70&show_cat=this&news_num=10&last=y"}
вот так будет правильнее, т.к. предыдущая новость в категории poser аж в марте была.
bratoz
bratoz 28 мая 2012 02:03
Теперь другой баг вылез.
Делаю топ на 5 категорий.
Каждый новый топ для категории копируется в следующий.
Вот картинка
top


Вывожу такой строкой
{include file="engine/modules/block.pro.2.php?&block_id=topae1&template=blockpro&top_rating=y&img_size=180x70&show_cat=2&news_num=5&day=30"}


Все id разные, категории тоже разные.
Zidein
Zidein 28 мая 2012 08:16
У меня, кстати именно так, каждый следующий, дублирует предыдущие.
Вписал &show_cat=this, и расскаментировал строку, все равно так fellow
ПафНутиЙ
ПафНутиЙ 28 мая 2012 08:37
bratoz,
Zidein,
Вечером проверю всё, скорее всего где то не "сбрасывается" выборка новостей, отсюда и дублирование. (на ранних версиях такое было уже)

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

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

Информация

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