HTML5Boilerplate с Yii Framework - PullRequest
       9

HTML5Boilerplate с Yii Framework

4 голосов
/ 19 января 2012

Кому-нибудь удалось интегрировать HTML5 Boilerplate в YII PHP Framework (в частности, структуру папок и процесс сборки)?

Ответы [ 5 ]

5 голосов
/ 22 января 2012

Boilerplate рекомендует использовать @import при добавлении стилей к голове.

<style>@import(/example.css);</style>

Yii использует модель ClientScript для добавления

<link type="text/css" src="/example.css" />

. Для регистрации файла используйте модель Yii :: app () -> clientScript.Yii позволяет вам регистрировать файлы скриптов по мере необходимости, для каждого контроллера или для каждого представления.Поэтому ваши http запросы могут быть минимальными.Я бы предложил зарегистрировать необходимые скрипты / css в основном макете и добавить другие скрипты по мере необходимости в

Yii::app()->clientScript->registerScriptFile();

. Yii основан на модели MVC.V для просмотра.Папки представления содержат HTML-элементы, которые ваша модель и контроллер будут корректировать в зависимости от типов данных.Внутри папки просмотра Yii использует папку макета для определения макетов.

$this->layout = 'main'; 

Эта строка будет искать:

Protected -> views -> layout -> main.php

Папка макета должна содержать main, _htmlHead, _header и _footer.RenderPartial будет использоваться для рендеринга различных частей макета.Это как php для HTML.Второй параметр $ this-> render или $ this-> renderPartial используется для передачи данных в представление.Например, навигационные данные:

$this->renderPartial('_footer', array('nav'=>array('/link/'=>'Link Name'))); 

В _htmlHead зарегистрируйте необходимые элементы, используя Yii :: app () -> clientScript.Если вы хотите использовать другую версию jQuery, то используйте модель ScriptMap, не регистрируйте jQuery дважды.CoreScript Yii, валидация и разбиение на страницы основаны на jQuery.

$cs = Yii::app()->clientScript;
$cs->registerCssFile('/css/base.css'); 
$cs->registerScriptFile('/js/base.js', CClientScript::POS_END);
/* Load Script at END of DOM tree: CClientScript::POS_END */

http://www.yiiframework.com/doc/api/1.1/CClientScript

В прошлом я использовал файл config.php в Yii для установки параметра assetsLocaion.Если я перенесу свои активы, это не сломает сайт.

Yii::app()->clientScript->registerScriptFile(Yii::app()->param->assetsLocation.'/js/example.js');

Основная компоновка шаблона будет определена в layout / main.php.Ознакомьтесь с документацией по теме: http://www.yiiframework.com/doc/guide/1.1/en/topics.theming

Файл макета может выглядеть следующим образом:

<!doctype html>
<?php $this->renderPartial('//layouts/_Htmlhead); ?>

<body>

  <div id="container">
    <?php $this->renderPartial('//layouts/_header); ?>
    <div id="main" role="main">
        <?php echo $content; ?>
    </div>
    <?php $this->renderPartial('//layouts/_footer); ?>
  </div> 
  <?php $this->renderPartial('//layouts/_footerScripts); ?>
</body>
</html>
3 голосов
/ 19 мая 2012

Проверьте мою интеграцию с Yii BoilerPlate и Bootstrap

https://github.com/drumaddict/YiiApp

1 голос
/ 04 октября 2012

Существует очень подробная вики-статья Антонио Рамиреса под названием:

YiiBoilerplate - настройка профессиональной структуры проекта в считанные секунды http://www.yiiframework.com/wiki/374/yiiboilerplate-setup-a-professional-project-structure-in-seconds/

Источники для этой настройки:https://github.com/clevertech/YiiBoilerplate

1 голос
/ 25 января 2012

Простая тема Yii HTML5 Boilerplate доступна по адресу https://github.com/neam/yii-html5-boilerplate

0 голосов
/ 04 сентября 2013

А как же
https://github.com/clevertech/YiiBoilerplate
Я думаю, что они используют HTML5Bilerplate

...