В этой статье мы научимся добавлять версию шаблона, случайное число, или же и то, и другое в качестве параметра строки запроса к ссылками ваших таблиц стилей (CSS). Это полезно для автоматического управлениями версиями, перебора коллекции записей кэша или и того, и другого.
1. Получаем версию темы
Здесь мы используем функцию WordPress wp_get_theme() для получения версии темы (как это указано в таблице стилей шаблона, style.css):
// получаем версию темы function wpmix_get_version() { $theme_data = wp_get_theme(); return $theme_data->Version; } $theme_version = wpmix_get_version(); global $theme_version;
Здесь редактирование не понадобится.
2. Получаем случайное число
Затем мы используем простую функцию PHP для генерации случайного числа:
// получаем случайное число function wpmix_get_random() { $randomizr = '-' . rand(100,999); return $randomizr; } $random_number = wpmix_get_random(); global $random_number;
Случайное число может быть добавлено к ссылке таблицы стилей при разработке для принудительного обновления файла браузерами. Поищите информацию на тему “cache-busting css” для кровавых подробностей 🙂
3. Подгружаем CSS
С доступными теперь версиями и случайными числами мы может использовать их при необходимости подгрузки CSS и других файлов. Например:
// инклудим свои таблицы стилей function wpmix_queue_css() { global $theme_version, $random_number; if (!is_admin()) { wp_register_style('custom_styles', get_template_directory_uri() . '/lib/css/custom.css', false, $theme_version . $random_number); wp_enqueue_style('custom_styles'); } } add_action('wp_print_styles', 'wpmix_queue_css');
При включении кода в functions.php совокупный результат этих методов можно наблюдать в исходном коде вашей страницы:
<link rel='stylesheet' id='custom_styles-css' href='http://wp-mix.com/wp/wp-content/themes/shapeSpace/lib/css/custom.css?ver=1.0-270' type='text/css' media='all' />
Учтите, что все коды в этой статье необходимо помещать в файл functions.php вашей темы. Также в функции подгрузки таблицы стилей можно убрать $theme_version, $random_number или обе сразу для вывода ссылки CSS в нужном виде.