Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

Вы не зашли.

#1 2017-04-19 16:07:46

Klim
Участник
Зарегистрирован: 2011-10-08
Сообщений: 123
Рейтинг :   

Блоки на гл. странице в зависимости от категории и даты публикации нов

Всем доброго дня.
Нужно сделать на главной странице вывод шести блоков:
1-й блок должен выводить пять последних новостей опубликованных на сайте из всех категорий.
2-й, 3-й, 4-й, 5-й и 6-й блоки должны выводить новости только из своих категорий, например: авто, политика, недвижимость и т.д.
Потоки в блоках (2, 3, 4, 5, 6) категорий разные по динамики, может быть так, что в одну категорию добавляется 10 новостей в день, а в другую категорию 1 новость в неделю.
Понятно, что это все просто реализуется с помощью плагина "xnews", но в таком случае новости из 1-ого блока будут дублировать новости из всех остальных блоков.

Вопрос, можно ли реализовать замысел так, чтобы 1-й блок выводил последние 5 новостей, а остальные блоки (2, 3, 4, 5, 6) выводили новости из своих категорий, но без последних новостей?

Схематично это можно представить так:
1-й блок (последние новости):
Новость № 1
Новость № 2
Новость № 3
Новость № 4
Новость № 5

2-й блок (Категория "авто")
Новость № 8
Новость № 11
Новость № 12
Новость № 21
Новость № 22

3-й блок (Категория "политика")
Новость № 6
Новость № 7
Новость № 13
Новость № 18
Новость № 24

4-й блок (Категория "недвижимость")
Новость № 9
Новость № 14
Новость № 15
Новость № 20
Новость № 25

Ну и т.д.

Не в сети

#2 2017-04-19 23:55:52

irbees2008
Продвинутый чайник ;)
Откуда Шахтинск
Зарегистрирован: 2012-03-14
Сообщений: 2,873
Рейтинг :   121 
Сайт

Re: Блоки на гл. странице в зависимости от категории и даты публикации нов

Можно big_smile , также можно посмотреть документацию к плагины там все подробно, ну если вообще как чайнику то у меня на сайте глянь

Изменено irbees2008 (2017-04-19 23:57:56)

Не в сети

#3 2017-04-20 00:48:52

Klim
Участник
Зарегистрирован: 2011-10-08
Сообщений: 123
Рейтинг :   

Re: Блоки на гл. странице в зависимости от категории и даты публикации нов

irbees2008, skipCurrent - это?

В общем, это я пробовал, в такой конструкции: 'skipCurrent' : '0' у меня вывод новостей не изменился, пробовал на релизе 0.9.5, и вариант без кеширования не очень подходит.

Изменено Klim (2017-04-20 01:04:18)

Не в сети

#4 2017-04-20 07:44:15

irbees2008
Продвинутый чайник ;)
Откуда Шахтинск
Зарегистрирован: 2012-03-14
Сообщений: 2,873
Рейтинг :   121 
Сайт

Re: Блоки на гл. странице в зависимости от категории и даты публикации нов

У меня вот такие конструкции на  http://naraione.org можешь посмотреть.

<div class="box_inner cat_box list_posts_box first_post_left posts-v1">
		<div class="news_box">
			<h3 class="news_box_title2"><a href="{{ home }}/zdorove.html">Здоровье</a></h3>
			<ul >
				{{ callPlugin('xnews.show', {'categories' : '166', 'order' : 'last', 'count': '1', 'skip' : '0','template' : 'xnews4', 'cacheAge' : '180'}) }}
				{{ callPlugin('xnews.show', {'categories' : '166,170', 'order' : 'last', 'count': '4', 'skip' : '1','template' : 'xnews5', 'cacheAge' : '180'}) }}
			</ul>
		</div>
	</div>

Не в сети

#5 2017-04-20 12:50:34

Klim
Участник
Зарегистрирован: 2011-10-08
Сообщений: 123
Рейтинг :   

Re: Блоки на гл. странице в зависимости от категории и даты публикации нов

irbees2008 Посмотрел твой сайт, теперь ты посмотри на скриншот морды своего сайта:
_http://s05.radikal.ru/i178/1704/e2/42f97e9a70e1.jpg
У тебя блок "Наши новости", "Последние новости" и "слайдер" дублируют вывод новостей. А мне надо чтобы такого дублирования не было.

Что касается конструкции она мне известна и хорошо описана в документации на "xnews"
'order' : 'last' – новости по дате публикации
'count': '1' – отображаешь одну новость
'skip' : '0' – выводить с первой новости
'skip' : '1' – выводить со второй новости, но это подходит если у тебя один блок, а если несколько блоков с разным набором категорий и которые обновляются по разному, то это не подходит.
Например, блок №2 где категории обновляются редко так и будет выводить вторую новость, а блок №1 с последними новостями не будет показывать первую новость с блока №2, так как в потоке будут более новые новости из других блоков, например №4, №5 и т.д.

Кстати, в твоей конструкции не хватает  'categoryMode' : '0', раз ты используешь 'categories' : '166'. Смотри документацию к плагину там все подробно! :-)

Изменено Klim (2017-04-20 13:11:59)

Не в сети

#6 2017-04-20 14:42:28

irbees2008
Продвинутый чайник ;)
Откуда Шахтинск
Зарегистрирован: 2012-03-14
Сообщений: 2,873
Рейтинг :   121 
Сайт

Re: Блоки на гл. странице в зависимости от категории и даты публикации нов

У меня все работает как надо wink, основные новости так задуманно,  тебе просто показали вариант , и кеширование работает,
Вечером накидаю твой вариант

Изменено irbees2008 (2017-04-20 14:43:22)

Не в сети

#7 2017-04-20 16:07:18

irbees2008
Продвинутый чайник ;)
Откуда Шахтинск
Зарегистрирован: 2012-03-14
Сообщений: 2,873
Рейтинг :   121 
Сайт

Re: Блоки на гл. странице в зависимости от категории и даты публикации нов

выводим  5 последних новостей

{{ callPlugin('xnews.show', {'categories' : 'перечисляешь все категории', 'order' : 'last', 'count': '5', 'template' : 'шаблон1', 'cacheAge' : '180'}) }}

Выводим новости категории авто

{{ callPlugin('xnews.show', {'categories' : 'avto', 'order' : 'last', 'count': '5', 'skip' : '1', 'template' : 'шаблон1', 'cacheAge' : '180'}) }}

Выводим новости категории политика

{{ callPlugin('xnews.show', {'categories' : 'политика', 'order' : 'last', 'count': '5', 'skip' : '1', 'template' : 'шаблон1', 'cacheAge' : '180'}) }}

ну и так далее

Не в сети

#8 2017-04-20 17:54:54

Klim
Участник
Зарегистрирован: 2011-10-08
Сообщений: 123
Рейтинг :   

Re: Блоки на гл. странице в зависимости от категории и даты публикации нов

irbees2008, этот вариант я понял и знаю, при такой конструкции все равно будет дублирование, вот смотри, пример:
Есть две категории "avto" и "политика"
И есть 10 новостей в этих двух категориях, по дате добавления:
Новость №1 (авто)
Новость №2 (авто)
Новость №3 (авто)
Новость №4 (авто)
Новость №5 (авто)
Новость №6 (политика)
Новость №7 (авто)
Новость №8 (авто)
Новость №9 (политика)
Новость №10 (политика)
--------------------------------
По твоей конструкции получим в блоке "Последние новости":
Новость №1 (авто)
Новость №2 (авто)
Новость №3 (авто)
Новость №4 (авто)
Новость №5 (авто)
--------------------------------
В блоке "avto"
Новость №2 (авто)
Новость №3 (авто)
Новость №4 (авто)
Новость №5 (авто)
Новость №7 (авто)
---------------------------------
В блоке "политика"
Новость №9 (политика)
Новость №10 (политика)
------------------------------------
Итог: блоки "Последние новости" и  "avto" идет дублирование Новостей: №2 (авто), №3 (авто), №4 (авто), №5 (авто)
А в блоке "политика" отсутствует Новость №6 (политика), так как по дате она уже не попадает в "Последние новости", а в блок "политика" она не попадает так как в блок выводятся новости начиная со второй ('skip' : '1')

Нужно сделать, чтобы было вот так:
Блок "Последние новости"
Новость №1 (авто)
Новость №2 (авто)
Новость №3 (авто)
Новость №4 (авто)
Новость №5 (авто)
--------------------------------
Блок "avto"
Новость №7 (авто)
Новость №8 (авто)
---------------------------------
В блоке "политика"
Новость №6 (политика)
Новость №9 (политика)
Новость №10 (политика)

Изменено Klim (2017-04-20 17:57:28)

Не в сети

#9 2017-04-22 07:49:48

irbees2008
Продвинутый чайник ;)
Откуда Шахтинск
Зарегистрирован: 2012-03-14
Сообщений: 2,873
Рейтинг :   121 
Сайт

Re: Блоки на гл. странице в зависимости от категории и даты публикации нов

1 блок делаешь из нескольких

{{ callPlugin('xnews.show', {'categories' : '1', 'order' : 'last', 'count': '2', 'template' : 'шаблон1', 'cacheAge' : '180'}) }}
{{ callPlugin('xnews.show', {'categories' : '2', 'order' : 'last', 'count': '2', 'template' : 'шаблон1', 'cacheAge' : '180'}) }}
{{ callPlugin('xnews.show', {'categories' : '3', 'order' : 'last', 'count': '2', 'template' : 'шаблон1', 'cacheAge' : '180'}) }}

далее первая категория

{{ callPlugin('xnews.show', {'categories' : '1', 'order' : 'last', 'count': '5', 'skip' : '2', 'template' : 'шаблон1', 'cacheAge' : '180'}) }}

вторая категория

{{ callPlugin('xnews.show', {'categories' : '2', 'order' : 'last', 'count': '5', 'skip' : '2', 'template' : 'шаблон1', 'cacheAge' : '180'}) }}

третья категоррия

{{ callPlugin('xnews.show', {'categories' : '3', 'order' : 'last', 'count': '5', 'skip' : '2', 'template' : 'шаблон1', 'cacheAge' : '180'}) }}

и ничего не дублируется

Изменено irbees2008 (2017-04-22 08:00:21)

Не в сети

Подвал раздела

Работает на FluxBB