Перейти к содержанию

Вывод определенного количества новостей (Pages)


Рекомендуемые сообщения

Интересует следующее. Имеется страница, имеется шаблон вывода новостей. Как выводить количество новостей которое мне хочется, а именно закрепленных, или например одну закрепленную , а другую важную рядом с ней, а ниже все остальные и чтобы они не повторялись с теми которые выше (важные и закрпленные).

Вот например имеется дефолтный вывод одной важной и остальных новостей, как его сделать чтобы вывелось 2 и более важных?

Вот index:

<div class='ipsPageHeader ipsClearfix ipsSpacer_bottom'>
	{{if $database->use_categories}}
	<div class='ipsPos_right ipsResponsive_noFloat'>
		<a href="{$url->setQueryString('show', 'categories')}" class="ipsButton ipsButton_medium ipsButton_fullWidth ipsButton_link"><i class="fa fa-folder-open"></i> {lang="cms_show_categories"}</a>
	</div>
	{{endif}}
	
</div>

{{if $database->can('add') or \IPS\Member::loggedIn()->member_id}}
	<ul class="ipsToolList ipsToolList_horizontal ipsClearfix ipsSpacer_both ipsResponsive_hidePhone">
		{{if $database->can('add')}}
			<li class='ipsToolList_primaryAction'>
				<a class="ipsButton ipsButton_medium ipsButton_important ipsButton_fullWidth" {{if $database->use_categories}}data-ipsDialog="1" data-ipsDialog-size="narrow" data-ipsDialog-title="{lang="cms_select_category"}"{{endif}} href="{$url->setQueryString( array( 'do' => 'form', 'd' => \IPS\cms\Databases\Dispatcher::i()->databaseId ) )}">{lang="cms_add_new_record_button" sprintf="$database->recordWord( 1 )"}</a>
			</li>
		{{endif}}
	</ul>
{{endif}}

<hr class='ipsHr'>
<section class='ipsType_normal ipsSpacer_both'>
  <div class="ipsAreaBackground_light ipsPad">
	{{if count($articles)}}
		{{foreach $articles as $id => $record}}
			
    
    		{{if $id == 0}}
                  <div class='ipsList_reset ipsGrid ipsGrid_collapsePhone' data-ipsgrid="" data-ipsgrid-equalheights='row'>
                 
                      
                  	<div class='SG_card ipsPad ipsAreaBackground_reset ipsType_left ipsGrid_span6' style='height: 418px;'>
						{template="entry" app="cms" location="database" group="supergrid" params="$record, $database, 2"}
                  	</div>
                   
				 </div>
                  
			{{else}}
				
 				{{if ($id - 1) % 3 == 0}}
					<div class='ipsList_reset ipsGrid ipsGrid_collapsePhone' data-ipsgrid="" data-ipsgrid-equalheights='row'>
				{{endif}}
                   	<div class='SG_card ipsPad ipsAreaBackground_reset ipsType_left ipsGrid_span4' style='height: 345px;'>
						{template="entry" app="cms" location="database" group="supergrid" params="$record, $database, $id"}
                    </div>
				{{if ($id - 1) % 3 == 2}}
					</div>
				{{endif}}
    
			{{endif}}
    
		{{endforeach}}
	{{endif}}
    </div>
</section>
{{if $database->featured_settings['pagination'] and ( $pagination['pages'] > 1 )}}
	{template="pagination" app="core" location="global" group="global" params="$url, $pagination['pages'], $pagination['page'], $database->featured_settings['perpage'], TRUE, 'page'"}
{{endif}}

Спасибо за любую идею и решение господа знатоки.

Ссылка на комментарий
Поделиться на другие сайты

господа как из этого массива вывести свое количество закрепленных новостей?

{{foreach $articles as $id => $record}}
			
    
    		{{if $id == 0}}
                  <div class='ipsList_reset ipsGrid ipsGrid_collapsePhone' data-ipsgrid="" data-ipsgrid-equalheights='row'>
                 
                      
                  	<div class='SG_card ipsPad ipsAreaBackground_reset ipsType_left ipsGrid_span6' style='height: 418px;'>
						{template="entry" app="cms" location="database" group="supergrid" params="$record, $database, 2"}
                  	</div>
                   
				 </div>
                  
			{{else}}
				
 				{{if ($id - 1) % 3 == 0}}
					<div class='ipsList_reset ipsGrid ipsGrid_collapsePhone' data-ipsgrid="" data-ipsgrid-equalheights='row'>
				{{endif}}
                   	<div class='SG_card ipsPad ipsAreaBackground_reset ipsType_left ipsGrid_span4' style='height: 345px;'>
						{template="entry" app="cms" location="database" group="supergrid" params="$record, $database, $id"}
                    </div>
				{{if ($id - 1) % 3 == 2}}
					</div>
				{{endif}}
    
			{{endif}}
    
		{{endforeach}}

 

Ссылка на комментарий
Поделиться на другие сайты

Ребята. ауууууууууууу! Как сделать 2 закрепленных или важных новости пример ниже:

 

222.PNG

Ссылка на комментарий
Поделиться на другие сайты

2 часа назад, andros0789 сказал:

Ребята. ауууууууууууу! 

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

В 21.11.2016 в 13:23, andros0789 сказал:

{{if count($articles)}}

На вскидку приходит  решение. В приведенном выше коде нет строки получения самих данных $articles. Именно с этим стоит работать.

1) Сначала получить нужные тебе данные, например, только 2 закрепленных статьи, вывести их как тебе необходимо. Затем, еще раз получить $articles, но уже все остальные и в том количестве, что тебе необходимо. Также вывести их в шаблоне.

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

Ссылка на комментарий
Поделиться на другие сайты

21 час назад, ram108 сказал:

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

На вскидку приходит  решение. В приведенном выше коде нет строки получения самих данных $articles. Именно с этим стоит работать.

1) Сначала получить нужные тебе данные, например, только 2 закрепленных статьи, вывести их как тебе необходимо. Затем, еще раз получить $articles, но уже все остальные и в том количестве, что тебе необходимо. Также вывести их в шаблоне.

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

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

Ссылка на комментарий
Поделиться на другие сайты

22 часа назад, andros0789 сказал:

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

А сколько нужно? Все дело в выборке данных. А далее шаблон вывода. Если есть хоть малейшие знания языка программирования, то собрать все воедино не сложно. Плюс доступна документация разработчика.

Ссылка на комментарий
Поделиться на другие сайты

21 минуту назад, ram108 сказал:

А сколько нужно? Все дело в выборке данных. А далее шаблон вывода. Если есть хоть малейшие знания языка программирования, то собрать все воедино не сложно. Плюс доступна документация разработчика.

я не могу понять суть именно IPS. именно вывода новостей. Вот хоть кто-то мне может показать пример?например если вы знаток языков программирования покажите пример. Набивка сообщений тут ни к чему об истине и познании и силе человеческого разума и тд. 

Ссылка на комментарий
Поделиться на другие сайты

1 минуту назад, andros0789 сказал:

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

Я же написал выше, что тут нужно разбираться и тестировать. Для этого нужно время и желание. У вас и то и другое есть, значит все получится.

1 минуту назад, andros0789 сказал:

Набивка сообщений тут ни к чему об истине и познании и силе человеческого разума и тд. 

Извини. Больше не набиваю тут сообщения.

Ссылка на комментарий
Поделиться на другие сайты

19 минут назад, ram108 сказал:

Я же написал выше, что тут нужно разбираться и тестировать. Для этого нужно время и желание. У вас и то и другое есть, значит все получится.

Извини. Больше не набиваю тут сообщения.

понятно...

Ссылка на комментарий
Поделиться на другие сайты

Последняя набивка сообщения. Ссылка на гайд по темплейтам: https://invisionpower.com/4guides/themes-and-customizations/template-syntax/

Ссылка на комментарий
Поделиться на другие сайты

Короче кому интересно вот рабочий вариант, вывода еще одной прикрепленной новости:

{{if count($articles)}}
		{{foreach $articles as $id => $record}}
			
    
    			{{if $id == 1}}
    				<div class='ipsList_reset ipsGrid ipsGrid_collapsePhone' data-ipsgrid="" data-ipsgrid-equalheights='row'>
      					<div class='SG_card ipsPad ipsAreaBackground_reset ipsType_left ipsGrid_span6' style='height: 418px;'>
						{template="entry" app="cms" location="database" group="supergrid" params="$record, $database, 1"}
                  	</div>
                   	</div>
      			{{endif}}
      
    		{{if $id == 0}}
                 
    			 
					<div class='ipsList_reset ipsGrid ipsGrid_collapsePhone' data-ipsgrid="" data-ipsgrid-equalheights='row'>
				
                 
                      
                  	<div class='SG_card ipsPad ipsAreaBackground_reset ipsType_left ipsGrid_span6' style='height: 418px;'>
						{template="entry" app="cms" location="database" group="supergrid" params="$record, $database, 2"}
                  	</div>
                    
                  
					
				
                  
			{{else}}
				
 				{{if ($id - 1) % 3 == 0}}
					<div class='ipsList_reset ipsGrid ipsGrid_collapsePhone' data-ipsgrid="" data-ipsgrid-equalheights='row'>
				{{endif}}
                   	<div class='SG_card ipsPad ipsAreaBackground_reset ipsType_left ipsGrid_span4' style='height: 345px;'>
						{template="entry" app="cms" location="database" group="supergrid" params="$record, $database, $id"}
                    </div>
				{{if ($id - 1) % 3 == 2}}
					</div>
				{{endif}}
    
			{{endif}}
    
		{{endforeach}}
	{{endif}}

 

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...