Переместить блок "последние новости"

Вопросы и ответы по изменению функционала, смене дизайна, переносу сайта и т.п.

Модераторы: Xpycm, Koduc

Правила форума
ВНИМАНИЕ! Форум не является средством гарантированной поддержки клиентов и пользователей. Поэтому на быстрый ответ тут рассчитывать не нужно, как и на ответ вообще. Сотрудники отвечают по мере своих возможностей.

На форуме действует ограничение в 3 сообщения / сутки.
Если Вы хотите сказать "спасибо", то воспользуйтесь функцией "Повысить репутацию" - зелёная иконка "плюс" под ником ответившего.

Переместить блок "последние новости"

Сообщение alexsn » 28 май 2014, 18:14

Подскажите пожалуйстка как переместить блок "последние новости" в другое место сайта.
По умолчанию они выводятся в блок main-content в файле "/protected/views/site/index.php
я попробовал ту часть кода которая отвечает за вывод, переместить в файл "layouts/index.php" в нужное мне место. но новости не отображаются из этого файла, потому что переменная $newsIndex не существует тут.
Подскажите как это сделать?
код вывода новостей в файле site/index.php:
Код: Выделить всё

<?php if (isset($newsIndex) && $newsIndex) : ?>
    <div class="clear"></div>
    <div class="last-news-index">
        <p class="title"><?php echo tt('News', 'news');?></p>
        <?php foreach($newsIndex as $news) : ?>
            <div class="last-news-item">
                <div class="last-news-date">
                    <p class="ns-label">
                        <?php echo $news->dateCreatedLong;?>
                    </p>
                </div>
                <div class="last-news-title">
                    <?php echo CHtml::link(truncateText($news->getStrByLang('title'), 8), $news->getUrl());?>
                </div>
            </div>
        <?php endforeach;?>
    </div>
    <div class="clear"></div>
<?php endif;?>
alexsn
Незнакомец
 
Сообщения: 2
Зарегистрирован: 28 май 2014, 18:07
Очки репутации: 0

Re: Переместить блок "последние новости"

Сообщение andipas » 29 май 2014, 12:11

Формирование переменной $newsIndex происходит в контроллере protected/controllers/SiteController.php метод actionIndex, соответственно можно использовать этот код:

Код: Выделить всё

        $criteriaNews 
= new CDbCriteria();
        
$criteriaNews->limit 10;
        
$criteriaNews->order 'date_created DESC';
        
$newsIndex News::model()->findAll($criteriaNews);
 
Часто задаваемые вопросы. Для правки файлов notepad++, netbeans, phpStorm. Для правки CSS firebug.
Аватара пользователя
andipas
Разработчик
Разработчик
 
Сообщения: 695
Зарегистрирован: 28 дек 2011, 22:37
Очки репутации: 30

Re: Переместить блок "последние новости"

Сообщение alexsn » 29 май 2014, 17:24

Благодарю.
alexsn
Незнакомец
 
Сообщения: 2
Зарегистрирован: 28 май 2014, 18:07
Очки репутации: 0


Вернуться в Вопросы и помощь по изменениям

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 21

cron