Перейти к содержимому


Новости И Статьи


  • Закрытая тема Тема закрыта
Сообщений в теме: 6

#1 Igork

Igork

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 83 сообщений

Отправлено 14 Сентябрь 2011 - 21:40

Добрый вечер! подскажите, можно сделать так, чтобы на сайте(на главной) отображалась только последняя статья или новость, а в архиве новостей всечто есть на сайте?



#2 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 23 788 сообщений

Отправлено 14 Сентябрь 2011 - 22:35

Для этого нужно в генерацию ленты новостей добавить одно условие
{%IF news_list_shop.last%}{%ENDIF%}

В шаблоне "html" нужно найти

{% FOR news_list_shop %}
								<div class="contentTbodyNewsBlockItem"> 
								  <a href="{news_list_shop.URL}" class="contentTbodyNewsBlockItemTitle" title="Перейти к странице новости">{news_list_shop.TITLE}</a><br />
								  
								  <div class="newsListBlockItemPreview">{news_list_shop.TEXT_SHORT} </div>
								  {% IF news_list_shop.SHOW_TIME %}<em class="contentTbodyNewsBlockItemTime">{news_list_shop.TIME | date("d.m.Y")}</em><br />{% ENDIF %}
								</div>
							  {% ENDFOR %}

далее получим следующий вид

{% FOR news_list_shop %}{%IF news_list_shop.last%}
								<div class="contentTbodyNewsBlockItem"> 
								  <a href="{news_list_shop.URL}" class="contentTbodyNewsBlockItemTitle" title="Перейти к странице новости">{news_list_shop.TITLE}</a><br />
								  
								  <div class="newsListBlockItemPreview">{news_list_shop.TEXT_SHORT} </div>
								  {% IF news_list_shop.SHOW_TIME %}<em class="contentTbodyNewsBlockItemTime">{news_list_shop.TIME | date("d.m.Y")}</em><br />{% ENDIF %}
								</div>
							  {%ENDIF%}{% ENDFOR %}


#3 Igork

Igork

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 83 сообщений

Отправлено 15 Сентябрь 2011 - 22:09

в моем случае статьи:

<!-- Список статей -->
                    <div class="contentTbodyNewsBlock">
                      {% FOR news_list_articles %}
                        <div class="contentTbodyNewsBlockItem">
                          <a href="{news_list_articles.URL}" class="contentTbodyNewsBlockItemTitle" title="Перейти к странице новости">{news_list_articles.TITLE}</a><br />

я добавляю  {%IF news_list_articles.last%}{%ENDIF%}


получается так:


<!-- Список статей -->
                    <div class="contentTbodyNewsBlock">
                      {% FOR news_list_articles %}{%IF news_list_articles.last%}{%ENDIF%}
                        <div class="contentTbodyNewsBlockItem">
                          <a href="{news_list_articles.URL}" class="contentTbodyNewsBlockItemTitle" title="Перейти к странице новости">{news_list_articles.TITLE}</a><br />


ничего не меняется, условие не работает




#4 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 23 788 сообщений

Отправлено 15 Сентябрь 2011 - 22:12

Посмотрите внимательнее на пример. Как вы должны были заметить то условие оборачивает внутри себя вывод информации. А вы просто делаете
{%IF news_list_articles.last%}{%ENDIF%}

а должно было быть так

<!-- Список статей -->
 <div class="contentTbodyNewsBlock">
 {% FOR news_list_articles %}{%IF news_list_articles.last%}
 <div class="contentTbodyNewsBlockItem"> 
 <a href="{news_list_articles.URL}" class="contentTbodyNewsBlockItemTitle" title="Перейти к странице новости">{news_list_articles.TITLE}</a><br />{%ENDIF%}


#5 Igork

Igork

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 83 сообщений

Отправлено 16 Сентябрь 2011 - 14:34

Да, спасибо я исправил свою ошибку. Поместил условие if во весь цикл for, но у меня отображалась не последняя статья, а наоборот первая, поэтому условие должно быть {%IF news_list_shop.first%}

#6 Igork

Igork

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 83 сообщений

Отправлено 06 Октябрь 2011 - 13:22

Еще ответьте на один вопрос, пожалуйста.

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

#7 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 23 788 сообщений

Отправлено 07 Октябрь 2011 - 03:19

Попробуйте в файле стилей main.css найти класс

.newsListBlockItemPreview {
	margin: 0.3em 0 0;
}

далее заменить его на

.newsListBlockItemPreview {
	margin: 0.3em 0 0;
	text-align: center;
}





Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных