Minify для HostCMS - объединение и сжатие скриптов и стилей

#
Re: Minify для HostCMS - объединение и сжатие скриптов и стилей
Евгений спасибо, пользуемся!
Cоздание сайтов на базе HostCMS: верстка и интеграция макетов, настройка, обновление системы, консультации.
#
Re: Minify для HostCMS - объединение и сжатие скриптов и стилей
Всегда пожалуйста!
Заказов не беру. Консультирую редко.
#
Re: Minify для HostCMS - объединение и сжатие скриптов и стилей
Кстати только у меня редактор в админке не цепляет стили при использовании minify?

Cоздание сайтов на базе HostCMS: верстка и интеграция макетов, настройка, обновление системы, консультации.
#
Re: Minify для HostCMS - объединение и сжатие скриптов и стилей
southart, честно говоря, не знаю.
Я по специфике своей работы вообще очень редко пользуюсь визуальным редактором, а когда пользовался, то, честно говоря, не обращал внимания.

Может быть кто-нибудь еще, кто пользуется данным решением, подскажет?
Заказов не беру. Консультирую редко.
#
Re: Minify для HostCMS - объединение и сжатие скриптов и стилей
Я посмотрю сегодня еще точно, когда работает а когда нет. Времени было мало, стоял вопрос срочной оптимизации.


Кстати и в продолжение темы, может быть как подсказка:

Думаю многие верстальщики используют "Conditional comments" для подключения отдельного стиля для браузера IE. Так вот было бы неплохо для минимизирования кол-ва запросов с помощью minify так же подключать такой файл, те проверку на браузер делать на сервере. Может сделать отдельную функцию? ..

Что-то типа на быструю:

function get_ieCSS()
{
    $path = '';
    $kernel = &singleton('kernel');
    $template_id = to_int($kernel->GetTemplate());

if ($template_id && isset($_SERVER['HTTP_USER_AGENT']) && (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false)) {

        $path = 'templates/template' . $template_id . '/css/ie.css';
    }
    return $path;
}
Cоздание сайтов на базе HostCMS: верстка и интеграция макетов, настройка, обновление системы, консультации.
#
Re: Minify для HostCMS - объединение и сжатие скриптов и стилей
southart, делать отдельную функцию, и определять производителя и версию браузера на сервере я не считаю целесообразным по следующему ряду причин:

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

1. При подключении отдельного файла стилей с помощью conditional comments этот файл будет загружаться только в браузерах IE, версия которого соответствует указанной в условии. Как правило, это IE6 и/или IE7. Процент этих браузеров на рынке уже, к счастью, очень невелик.
Ну и к тому же, css-файл в таких случаях, как правило, всего один, и никаких запросов мы тут дополнительно не сэкономим.

2. Как правило, сами css-файлы со стилями для IE по размеру - малы. (Ну если, конечно, у вас верстальщик с мозгами.) А как известно, для файлов размером менее килобайта, gzip-сжатие очень часто дает отрицательный результат, т.е. сжатый файл получается по размеру больше исходного. Такова особенность алгоритма. (Неслучайно же, всецело рекомендуемый для высоконагруженных проектов web-сервер Nginx по-умолчанию отдает текстовую статику без gz-сжатия, если размер файла меньше 1 килобайта).

3. В ряде случаев, вообще проще и целесообразнее бывает прописать IE-cтили прямо внутри conditional comment, вставив в него тег style. Таким образом мы избавимся и от лишнего запроса в старых IE.

4. Ну и есть еще один способ, для истинных гуру css - использовать css-хаки для разных браузеров непосредственно внутри основного css-файла. Так делают, например, в Yahoo, - в их css-фреймворке YUI Grids нет отдельных файлов для старых версий IE, и тем не менее сетки отображаются одинаково во всех браузерах. Поскольку мы все равно используем в css различные проприетарные префиксы, типа -moz или -webkit то валидным наш css уже все равно не будет, а эти префиксы, по сути, есть те же хаки.
Таким способом мы можем вообще избавится от conditional comments в макете, и это в принципе устраняет необходимость в дополнительном функционале для них.
Заказов не беру. Консультирую редко.
#
Re: Minify для HostCMS - объединение и сжатие скриптов и стилей
Kotoff писал(а):
0. В этом случае на сервере важно точно определить не только марку барузера, но и его версию. Все php-решения которые я до сих пор встречал, делают это с той или иной погрешностью


Можно как-то конкретней?

Kotoff писал(а):
1. При подключении отдельного файла стилей с помощью conditional comments этот файл будет загружаться только в браузерах IE, версия которого соответствует указанной в условии. Как правило, это IE6 и/или IE7. Процент этих браузеров на рынке уже, к счастью, очень невелик.

3. В ряде случаев, вообще проще и целесообразнее бывает прописать IE-cтили прямо внутри conditional comment, вставив в него тег style. Таким образом мы избавимся и от лишнего запроса в старых IE.

4. Ну и есть еще один способ, для истинных гуру css — использовать css-хаки для разных браузеров непосредственно внутри основного css-файла. Так делают, например, в Yahoo, — в их css-фреймворке YUI Grids нет отдельных файлов для старых версий IE, и тем не менее сетки отображаются одинаково во всех браузерах. Поскольку мы все равно используем в css различные проприетарные префиксы, типа -moz или -webkit то валидным наш css уже все равно не будет, а эти префиксы, по сути, есть те же хаки.
Таким способом мы можем вообще избавится от conditional comments в макете, и это в принципе устраняет необходимость в дополнительном функционале для них.


Спасибо канечно за познавательные речи, это к сожалению мы знаем. У каждого своя тактика в работе.

Cоздание сайтов на базе HostCMS: верстка и интеграция макетов, настройка, обновление системы, консультации.
#
Re: Minify для HostCMS - объединение и сжатие скриптов и стилей
southart писал(а):
У каждого своя тактика в работе.
Ну сделайте свой минификатор для HostCMS, с бледжеком и шлюхами
Заказов не беру. Консультирую редко.
#
Re: Minify для HostCMS - объединение и сжатие скриптов и стилей
Логика ясна, спасибо -)

Но что насчет версии браузера а не:

Цитата:
В этом случае на сервере важно точно определить не только марку барузера, но и его версию


Важно кому? Я ведь спросил только про определение марки и не более. С определением марки тоже проблемы? Какие тут подводные камни, на практике были?
Cоздание сайтов на базе HostCMS: верстка и интеграция макетов, настройка, обновление системы, консультации.
#
Re: Minify для HostCMS - объединение и сжатие скриптов и стилей
Кстати а можно ли активировать как-то debug mode для одного сайта, в макете вместе с вызовом minify?
Как-то лень в админку лезть активировать через константу и к тому же это сработает для всех сайтов что нежелательно.
К тому же необязательно например тот же css дебажить, пусть остается минимизированным, в общем чтобы можно было и scripts и styles раздельно активировать в debug.

Спасибо. // пожелание..
Cоздание сайтов на базе HostCMS: верстка и интеграция макетов, настройка, обновление системы, консультации.
Авторизация