Дизайн контента

156
30 марта 2017, 22:35

Здравствуйте, использую движок FlexoCMS и для эстетической красоты на сайте решил сделать, блок новостей, задумка такая чтобы четные новости и нечетные имели разный дизайн. Вот код

    <?php foreach ($articles->children(array('limit' => 10, 'offset' => (isset($_GET['offset']) ? (int)$_GET['offset']: 0))) as $item): ?>
<div class="media">ТУТ мои вставки, титулки итд</div>
<?php endforeach; ?>

Как сделать чтобы все четные div блоки были класса media а нечетные media2 класса. Для полноты картины прикрепляю полный код сниппета отвечающего за контент на странице

    <?php
$articles = $this->find('отзывы-клиентов');
?>
<div class="articles-list" style="
       margin: 0 auto;
    max-width: 800px;
">
    <?php foreach ($articles->children(array('limit' => 10, 'offset' => (isset($_GET['offset']) ? (int)$_GET['offset']: 0))) as $item): ?>
    <div class="media">
                            <div class="pull-left">
                                <a href="#"><img style="width: 180px;border-radius: 101px;" src="<?php echo $item->images->findOne()->url(); ?> ">  </a>
                            </div>
                            <div class="media-body">
                                <blockquote style="margin-top: 20px;"><?php echo $item->content(); ?></blockquote>
                                <h3><a>-  <?php  echo $item->content('name_otz', true); ?></a></h3>
                            </div>
                         </div>
    <?php endforeach; ?>
</div><!--/.articles-list-->
<?php
$articles_count = $articles->childrenCount();
$offset = (isset($_GET['offset']) ? (int)$_GET['offset']: 0);
?>
<br><br><br><br>
<?php $this->includeSnippet('priem_zayavok'); ?>
<!--
<nav class="pager">
    <?php if($articles_count > 10 && ($offset+10) < $articles_count): ?>
    <a class="pager-old" href="<?php echo get_url('articles'); ?>?offset=<?php echo ($offset+10); ?>">Older posts</a>
    <?php endif; ?>
    <a class="pager-home" href="<?php echo get_url('articles'); ?>">Home</a>
    <?php if($offset >= 10): ?>
    <a class="pager-new" href="<?php echo get_url('articles'); ?>?offset=<?php echo ($offset-10); ?>">Newer posts</a>
    <?php endif; ?>
</nav>
-->

Cчетчик самой новости

$articles_count

Answer 1

Для того чтобы по-разному оформить чётные и нечётные блоки лучше всего воспользоваться мощью CSS (https://developer.mozilla.org/ru/docs/Web/CSS/:nth-child)

Для решения задачи на php, объявите счётчик итераций $i = 0; и увеличивайте его в конце каждой итерации цикала foreach ($articles->children....

$i = 0;
foreach(...) {
    ...
    if ($i % 2) { // если чётное
    }
    ++$i;
}
READ ALSO
Проблема с циклической переадресацией

Проблема с циклической переадресацией

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

158
Вопрос про модель в MVC

Вопрос про модель в MVC

Здравствуйте, я смотрел, как делают два разных человека сайт и так и не понял, откуда брать данные из БД в модели или контроллере? ну, те

171
Вставить в код url адрес домена

Вставить в код url адрес домена

Помогите, пожалуйста в код ниже, вставить ROOT домен, не страницу нахождения а именно доменВставить нужно перед video/

215