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

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

11.09
124
37 870
Block.Pro - расширенный вывод блоков с новостями для DLE




Представляю Вашему вниманию модуль для DLE - Block.Pro - расширенный вывод блоков с новостями.


Модуль является логическим продолжением выпущенного ранее Advanced Top и предназначен для вывода неограниченного числа блоков с новостями у себя на сайте.

Особенности модуля:


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

Возможности модуля:


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

Установка:


1. Копируем файл block.pro.php в папку /engine/modules/.
2. Создаём в папке /uploads/ папку blockpro и прописываем ей CHMOD 777
Это для картинок к новостям.
3. Подключаем модуль строкой
{include file="engine/modules/block.pro.php?&block_num=xxx"}

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

Всё готово!

Остальная нужная информация, как и в прошлом модуле, прокомментирована в файле модуля.

Жду мнений.


ВНИМАНИЕ!

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

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

Комментарии

Crazy
Crazy 20 октября 2011 13:57
удалил...
ПафНутиЙ
ПафНутиЙ 23 октября 2011 21:58
Правильно сделали, не мучайте себя)))
ПафНутиЙ
ПафНутиЙ 23 октября 2011 22:01
Awwa,

Не знаю, посмотрел сайт, всё в порядке, почему так происходит - реально не знаю.
kibal4ish
kibal4ish 27 октября 2011 18:09

Добрый день. Подскажите пожалуйста, как сделать так, чтобы не только текст был границей новости, иначе получается вот такая ерунда crying и можно ли убрать дату перед заголовком?
Заранее благодарю =)
ПафНутиЙ
ПафНутиЙ 27 октября 2011 21:31
добавьте в css:

.t_news:before,
.t_news:after {
content:"";
display:table;
}
.t_news:after {
clear:both;
}
.t_news {
zoom:1;
}
xp-ov
xp-ov 31 октября 2011 23:47
Отличный модуль, доступо описана установка, легко устанавливается.Автору +!.
Поставил на DLE9.4. Прикрутил jQuery.
Можно посмотреть _http://interwar.ru.
Спасибо.
kibal4ish
kibal4ish 1 ноября 2011 15:32
Если в стилях прописать то, что вы написали сверху, то будет как по стандарту, то есть вот так:


А как сделать, чтобы так получилось?


Прописываю в шаблоне
{include file="engine/modules/block.pro.php?&block_num=var1&img_show="yes"&t_img_w = 80&t_img_h = 80"}
и не меняется размер картинок... вроде все правильно пишу
ПафНутиЙ
ПафНутиЙ 1 ноября 2011 22:02
.t_image {float:left;} прописано?

Цитата: kibal4ish
и не меняется размер картинок... вроде все правильно пишу

- Кеширование каждого блока в отдельный файл, картинки кешируются в отдельную папку.
ни о чём не говорит?
kibal4ish
kibal4ish 1 ноября 2011 23:36
ПафНутиЙ,
да прописано, не помогает =(
ПафНутиЙ
ПафНутиЙ 2 ноября 2011 20:19
Меняем
$top_adv .= $image.'<div class="t_news"><h5>'.date('d-m-Y',$news_date).'<a href="'.$t_link.'" title="'.$full_title.'">'.$t_title.'</a> '.$t_comm_num.'</h5><div class="t_story">'.$t_story.'</div></div>'; //Вариант для вывода блока с картинкой и текстом

на
    $top_adv .= $image.'<div class="t_news"><h5>'.date('d-m-Y',$news_date).'<a href="'.$t_link.'" title="'.$full_title.'">'.$t_title.'</a> '.$t_comm_num.'</h5><div class="t_story">'.$t_story.'</div><div class="clr"></div></div>'; //Вариант для вывода блока с картинкой и текстом

в css добавить
.clr{clear:both; height:0;overflow:hidden;}

а то, что довал до этого - убрать.
idal
idal 2 ноября 2011 20:23
Здравствуйте! Модуль отличный) я правда только начинающий, так что можно смело назвать нубок) Как сделать 1 Вывод только картинки с дополнительного поля ( фишка в том, что ставлю в описание нули, и получается картинка + какие то точки.
2) как нибудь взять модуль в табличку, чтобы не нарушай целости сайта.
ПафНутиЙ
ПафНутиЙ 4 ноября 2011 17:37
в настройках сделайте описание = 0 (равно нулю
Ну и
<table>
модуль
</table>
innersun
innersun 7 ноября 2011 23:06
Приветствую! Сасибо, модуль супер! Подскажите пожалуйста, как сделать картинку из дополнительного поля ещё и кликабельной - это возможно? {include file="engine/modules/block.pro.php?&block_num=var1&news_num=6&variant=3&day=0&story_length=0&top_field=logo"}
kibal4ish
kibal4ish 10 ноября 2011 13:18
Вид блока так и не изменился =(
ПафНутиЙ
ПафНутиЙ 10 ноября 2011 21:46
Цитата: kibal4ish
Вид блока так и не изменился =(

Тогда вам поможет только выпрямитель рук.

Цитата: innersun
Подскажите пожалуйста, как сделать картинку из дополнительного поля ещё и кликабельной - это возможно?

Задайте вопрос на dle-faq.pro, я уже честное слово, устал объяснять как сделать всякую мелочь.
Либо ждите выхода следующей версии модуля, с шаблонами.
opener
opener 11 ноября 2011 10:45
Привет, Панфутий. У меня что-то не работает модуль так, как должен.
По умолчанию вставленный в main.tpl {include file="engine/modules/block.pro.php?&block_num=xxx"} выводит 10 новостей за 30 дней, но {include file="engine/modules/block.pro.php?&block_num=xxx$day=0$top_cat=3"} не выводит новости только из 3-й категории. Ничего не меняется, выводятся по прежнему новости по умолчанию со всех категорий.

Прописал {include file="engine/modules/block.pro.php?&block_num=xxx$day=0$top_cat=2-3-4$news_num=20"}, чтобы 20 новостей выводилось, ничего не произошло. Что я делаю не правильно?
ПафНутиЙ
ПафНутиЙ 12 ноября 2011 08:03
Смотрите вниметельнее примеры и увидете, что вы пишите $ вместо &
Так же не забывайте чистить кеш после изменений строки подключения.
opener
opener 12 ноября 2011 09:22
)) спасибо. никого рядом не было, не подсказали. А то я уже $ от & отличить не мог)).
Теперь всё работает.

Вопрос такого характера, переменная &block_num=xxx нужна, чтобы можно было выводить несколько блоков с разными категориями на сайте? Например, в сайдбар выводим &block_num=doors - блок (заключенный в div), где выводятся последние новости из категории о дверях, и &block_num=windows - блок, где будут выводится новости из категории про окна (это для примера, конечно). Если так, то можно ли оформить вывод этих блоков по разному. Например в блоке с выводом категории новостей о дверях только титл, текст новости и дата, а в блоке про окна добавить ещё картинку, которая будет ссылкой и вести в фуллстори. Но при этом параметры титла (в одном случае у титла есть бэкграунд, а в другом нет) и формата вывода даты у этих блоков различаются. Если это возможно, то я был бы счастлив. :-)
ПафНутиЙ
ПафНутиЙ 12 ноября 2011 20:12
Начну с того, что разный контент, выводимый блоками зависит от самой строки подключения, как настроите, то и будет выводить.
Переменная &block_num=xxx нужна для двух вещей:
1. Для идентификации кеша блока, ибо каждый блок кешируется отдельно.
2. Для идентификации бока по ID. Это нужно для уникализации каждого блока в коде страницы. Т.е. в вашем случаи на странице будет два блока с разными id -
<div id="top_block_doors">...</div>
и
<div id="top_block_windows">...</div>

Таким образом мы можем задать через CSS разное оформление для разных блоков, делаем примерно так:
#top_block_doors .t_news {background: #fafafa; color: #323232;}
#top_block_windows .t_news {background: #323232; color: #fafafa;}
opener
opener 15 ноября 2011 00:26
Привет, Панфутий. Я доделал на своем сайте шаблон вывода новостей в категории "видео", подробнее изучил ваш модуль и окончательно убедился, что он просто шикарен. Очень много возможностей. Но я не смог вывести в блоке новости, так, как задумал и причина этому одна - я не до конца понял, как вывести картинку, которая была бы ссылкой на полную новость.

Сайт opener-tv.ru - в сайдбаре сейчас два блока "последнее видео". Я хочу, чтобы новости выводились такой структурой, как в верхнем блоке - картинка, которая является ссылкой на полную новость, ниже заголовок новости, который является идентичной ссылкой, ещё ниже дата и, если позволяет модуль - количество просмотров.

Оформить всё это в css - не проблема, проблема в правильной настройке варианта вывода в block.pro.php и строка подключения.

Выводить новости мне нужно из 2-й и 7-й категорий, выводить по дате публикации, количество 10 без ограничения по времени существования новости на сайте и того получаем строку:
{include file="engine/modules/block.pro.php?&block_num=pro-video&top_cat=2-7&lastnewsvar=1&news_num=10&day=0"}
Как вывести картинку, которая будет ссылкой на новость и упорядочить вывод "картинка-титл-дата-просмотры"? Помогите, пожалуйста.

Не знаю синтаксиса пхп, и не знаю как правильно подключить картинку ссылкой.
opener
opener 18 ноября 2011 22:12
Я разобрался и у меня получилось сделать нужную структуру, но 3 момента:

1. По какой-то причине у последней (самой новой по дате) выводимой новости не выводится картинка. - ссылка браузером формируется, но картинка, которая была бы этой ссылкой, не выводится. Такое только с одной последней новостью, у всех остальных все норм.

2. Полный месяц в дате пишется на английском, а нужно на русском.

3. Можно ли выводить количество просмотров с помощью данного модуля?

Код подключения:


Код формирования вывода блока - http://opener-tv.ru/uploads/1223.png (в комментарии этот код вставить нельзя)
ПафНутиЙ
ПафНутиЙ 19 ноября 2011 11:10
Исх код нужно заключать в соответствующие теги [_code] и [/_code] только без нижних подчёркиваний)))
opener
opener 19 ноября 2011 13:30
сайт opener-tv.ru

Я разобрался и у меня получилось сделать нужную структуру, но 3 момента:

1. По какой-то причине у последней (самой новой по дате) выводимой новости не выводится картинка. - ссылка браузером формируется, но картинка, которая была бы этой ссылкой, не выводится. Такое только с одной последней новостью, у всех остальных все норм.

2. Полный месяц в дате пишется на английском, а нужно на русском.

3. Можно ли выводить количество просмотров с помощью данного модуля?

Код подключения:
{include file="engine/modules/block.pro.php?&block_num=pro-video&variant=2&title_length=60&story_length=180&top_cat=2-7&lastnewsvar=1&news_num=6&day=0&t_img_w=170&t_

img_h=101"}


Код формирования вывода блока:
if ($variant == 2) {
    $img_show = 1;
    $news_date = strtotime( $row['date'] );
    $top_adv .= '<div class="provideo"><div class="provideoimg"><a href="'.$t_link.'" title="'.$full_title.''.$t_story.'">'.$image.'</a></div><div class="provideotitle"><a href="'.$t_link.'" title="'.$full_title.'">'.$t_title.'</a><div class="provideodate">'.date('j F Y, H:i',$news_date).'</div></div></div>';
    }
ПафНутиЙ
ПафНутиЙ 19 ноября 2011 14:32
if ($variant == 2) {
    $img_show = 1;
    $news_date = strtotime( $row['date'] );
    $top_adv .= '<div class="provideo"><div class="provideoimg"><a href="'.$t_link.'" title="'.$full_title'">'.$image.'</a></div><div class="provideotitle"><a href="'.$t_link.'" title="'.$full_title.'">'.$t_title.'</a><div class="provideodate">'.date('j F Y, H:i',$news_date).'</div></div></div>';
    }

Всёравно содержимое новости не выводится, убераем и его вывод в модуле и строке подключения
{include file="engine/modules/block.pro.php?&block_num=pro-video&variant=2&title_length=60&top_cat=2-7&lastnewsvar=1&news_num=6&day=0&t_img_w=170&t_img_h=101"}


По первым двум вопросам понятия не имею. попробуйте вывести дату как цифры.

Поо третьему:
можно, нужно определить переменную для вывода количества просмотра новостей и включить её в один (или все) ваиат вывода.

Делать мне это огромнейшая лень, как и поддерживать эту версию модуля, т.к. потихоньку пишу новую.
Awwa
Awwa 22 ноября 2011 23:36
Цитата: xp-ov
Отличный модуль, доступо описана установка, легко устанавливается.Автору +!.
Поставил на DLE9.4. Прикрутил jQuery.
Можно посмотреть _http://interwar.ru.

Вам так бістро модуль надоел ?
Где такой слайдер брали?
kibal4ish
kibal4ish 29 ноября 2011 02:23
Пафнутий,
не подскажете, как реализовать вывод "похожих новостей" через данный блок?
и как убрать дату перед заголовками? а то они как то сливаются сильно... winked
ПафНутиЙ
ПафНутиЙ 30 ноября 2011 18:07
Похожие новости этим модулем не выводятся.
для того, чтобы убрать дату удалите из модуля код:
'.date('d-m-Y',$news_date).'
kibal4ish
kibal4ish 1 декабря 2011 03:49
в любом случае огромное спасибо за модуль ну и за помощь =)
kol4erukij
kol4erukij 3 декабря 2011 21:12
ПафНутиЙ, а как сделать чтобы картинка не обрезалась через crop, а уменьшалась пропорционально по заданной ширине или высоте?
ПафНутиЙ
ПафНутиЙ 3 декабря 2011 22:58
замените в файле слово crop на scale

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

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

Информация

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