Оптимизируя быстродействие своих блогов заметил в одном из шаблонов php-файлик который минифицирует css - убирает все лишние символы: пробелы, табуляцию и тд. и тп. За счет этого css-файлы становятся меньше по объему. Решил этот php-файл скопировать в другие шаблоны - все работает. Делюсь этим файликом.
Итак сам php-файл:
<?php header( "Content-type: text/css" ); $files = array(); $files[] = 'style.css'; $files[] = 'https://elims.org.ua/wp-content/themes/Technologic/Technologic/menu/MenuMatic.css'; $files[] = 'https://elims.org.ua/wp-content/plugins/wp-pagenavi/pagenavi-css.css?ver=2.70'; foreach($files as $file) : $content = @file_get_contents( $file ); echo minify( $content ); endforeach; function minify( $code ) { $code = preg_replace( '#\s+#', ' ', $code ); $code = preg_replace( '#/\*.*?\*/#s', '', $code ); $code = str_replace( '; ', ';', $code ); $code = str_replace( ': ', ':', $code ); $code = str_replace( ' {', '{', $code ); $code = str_replace( '{ ', '{', $code ); $code = str_replace( ', ', ',', $code ); $code = str_replace( '} ', '}', $code ); $code = str_replace( ';}', '}', $code ); return trim( $code ); } ?>
Копируем этот текст в блокнот и сохраняем его, например, в файл под именем style.php. Style.php скопируйте в папку с шаблоном - этот файл теперь буден виден в wordpress-редакторе шаблона. Благодаря чему его можно будет легко изменять.
Прошу обратить внимание на строки:
$files[] = 'style.css'; $files[] = 'https://elims.org.ua/wp-content/themes/Technologic/Technologic/menu/MenuMatic.css'; $files[] = 'https://elims.org.ua/wp-content/plugins/wp-pagenavi/pagenavi-css.css?ver=2.70';
В этих строках перечислены мои css-файлы, которые я минифицирую. У вас они должны быть свои, смотрите какие css-файлы вы можете отключить в плагинах или убрать из кода шаблона. В плагинах и шаблоне css убираете и вставляете адреса этих файлов в style.php, как в моем примере.
Осталось только в шаблоне заменить строку, которая указывала на стандартный style.css, строкой которая будет указывать на style.php.
В своем шаблоне, в файле header.php я заменил строку
<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>" type="text/css" media="screen" />
На
<link rel="stylesheet" href="https://elims.org.ua/wp-content/themes/Technologic/Technologic/style.php" type="text/css" media="screen" />
При минификации файлов можно пойти и другим путем - открыть файл, минифицировать его содержимое и сохранить. Но тут есть нюанс - если это файл плагина, то при обновлении плагина этот файл также может обновиться, а если это файл шаблона - то потом будет крайне неудобно редактировать этот плохо-читаемый код. Потому я выбрал вышеописанный метод. Еще один плюс этого метода, что вместо нескольких мелких файлов подгружается один файл, что также хорошо сказывается на скорости загрузки.