В header.php мне нравится присваивать номер версии таблице стилей, чтобы браузер был вынужден обновить ее. Но при работе с дочерней темой ее таблица стилей явно не вызывается, скорее WordPress автоматически ищет ее. Так как или где приписать номер версии к таблице стилей дочерней темы?
child-theme
css
drake035
источник
источник
Я думаю, что лучший способ сделать это - оставить таблицу стилей дочерней темы (style.css) пустой только с необходимыми комментариями (такими как название темы, описание и т. Д., Чтобы WordPress распознал вашу тему), а затем сделать другой файл CSS в вашем тема-имя-папки / CSS / main.css
После этого в файле function.php вы можете иметь новую «версию» каждый раз, когда вы меняете свой файл:
Логика:
Каждый раз, когда вы сохраняете файл, время его изменения изменяется. Новое время передается в функцию date для преобразования времени (filemtime возвращает целое число, представляющее время) в формат даты, чтобы сделать его строкой в желаемом формате. В нашем примере время форматируется с точностью до минут. Вы можете изменить его, чтобы отслеживать даже секунду, т.
"YmdHis"
Е. После этого новое время изменения файла передается в качестве новой версииwp_enqueue_style
.Ссылка :
http://www.php.net/filemtime
http://php.net/manual/en/function.date.php
источник
$cache_buster = wp_get_theme()->get('Version')
вы получите версию, указанную в блоке комментариев вstyle.css
. См. Codex.wordpress.org/Function_Reference/wp_get_theme для справки.wp_get_theme()->get('Version')
что так работает).Вам нужно отменить регистрацию основного стиля по дескриптору, а затем заново зарегистрироваться по номеру версии. В этом случае ручка есть
style-css
.Вы можете определить дескриптор, который вам нужно использовать, посмотрев ссылку на визуализированную таблицу стилей:
Здесь идентификатор
style-css-css
означает, что наша ручкаstyle-css
Поместите это в function.php вашей дочерней темы:
источник
Текущий верхний ответ зависит от темы, поскольку он требует, чтобы разработчик темы преобразовал номер версии этой дочерней темы в переменную, а затем добавил его в дочерний файл style.css при его постановке в очередь. Я видел это на некоторых темах, но не на многих. Следующее работает для любой темы, которая регистрирует дочерние стили в functions.php - не будет работать со старым правилом @import, которого я больше не видел.
В functions.php дочерней темы у вас должно быть что-то похожее на это:
Если вы измените его на следующее, он будет добавлять временную метку в качестве номера версии при каждом сохранении файла, что позволяет каждому изменению таблицы стилей проходить через локальный кэш:
Надеюсь, это кому-нибудь поможет. Я использую это на каждом сайте, которым я активно управляю.
источник
Я считаю, что если вы используете редактор тем Wordpress для редактирования таблицы стилей вашей дочерней темы, он автоматически добавляет новый номер версии каждый раз, когда вы сохраняете файл.
источник
Вместо того, чтобы использовать style.css по умолчанию, я обычно использую wp_enqueue_style в файле functions.php дочерней темы или в другом включенном php-файле. Таким образом, у вас все еще будет style.css в дочерней теме со всеми деталями дочерней темы, но затем вы можете иметь отдельный файл css в дочерней теме для фактического стиля дочерней темы (я обычно помещаю это в assets / css каталог в рамках дочерней темы). Это также позволит вам установить версию CSS с 4-м параметром. Например:
Вы можете добавить приоритет к действию, если оно не загружается в правильном порядке или работает с параметром зависимости в wp_enqueue_style выше:
источник