Объединение и минимизация CSS и Javascript файлов
Объединение и минимизация CSS-файлов
В макете сайта все дополнительные CSS-файлы добавляются с использованием метода Core_Page::instance()->css() и показываются с использованием метода showCss(), например:
<?php
Core_Page::instance()
->css('/hostcmsfiles/jquery/lightbox/css/jquery.lightbox.css')
->css('/hostcmsfiles/jquery/slider/jquery-ui.css')
->showCss();
?>
Объединение и минимизация Javascript-файлов
В макете сайта все Javascript-файлы добавляются с использованием метода Core_Page::instance()->js($js, $mode = FALSE) и показываются с использованием метода showJs(), например:
<?php
Core_Page::instance()
// jQuery
->js('/hostcmsfiles/jquery/jquery.min.js')
// Validate
->js('/hostcmsfiles/jquery/jquery.validate.min.js')
// LightBox
->js('/hostcmsfiles/jquery/lightbox/js/jquery.lightbox.js')
// HostCMS
->js('/templates/template1/hostcms.js')
->js('/hostcmsfiles/main.js')
// BBcode, асинхронное подключение
->js('/hostcmsfiles/jquery/bbedit/jquery.bbedit.js', 'async')
// Stars
->js('/hostcmsfiles/jquery/stars/jquery.ui.core.min.js')
->js('/hostcmsfiles/jquery/stars/jquery.ui.widget.min.js')
->js('/hostcmsfiles/jquery/stars/jquery.ui.stars.js')
->js('/hostcmsfiles/jquery/slider/jquery-ui.min.js')
->showJs();
?>
При использовании объединения и минимизации Javascript-файлов асинхронная загрузка указывается для Core_Page::instance()->showJs('async'), например:
<?php
Core_Page::instance()
// jQuery
->js('/hostcmsfiles/jquery/jquery.min.js')
// Validate
->js('/hostcmsfiles/jquery/jquery.validate.min.js')
// С использованием асинхронной загрузки всего объединенного файла
->showJs('async');
?>
Для асинхронной загрузки указывается опция 'async' или TRUE, для загрузки в режиме defer указывается 'defer'.
Обновление минимизированных файлов
Объединенные файлы размещаются в директории hostcmsfiles/css/ и hostcmsfiles/js/, файлы обновляются при редактировании макетов через центр администрирования. В случае, если вы правите CSS/JS вручную, то необходимо самостоятельно удалять сохраненные файлы в hostcmsfiles/css/ и hostcmsfiles/js/.