Версия файлов CSS и JS

Привет, тема наверное избитая, но ответа не нашел.
Как добавить версию к файлам CSS и JS? Или так — как добавить к нужным файлам CSS и JS дату их изменения?
Сергей
19 апреля 2018, 19:13
modx.pro
1
3 237
-1

Комментарии: 5

Баха Волков
21 апреля 2018, 11:38
-1
<link rel="stylesheet" href="mystyle.css?ver=1.0.0">
    Олег
    21 апреля 2018, 12:36
    3
    +3
    1) Создаем новый сниппет:
    Назовем его к примеру fileversion
    <?php
    $file_path = MODX_BASE_PATH.$input;
    if (file_exists($file_path)) {
    	return $input."?".md5_file($file_path);
    }
    else {
    	return $input;
    }
    2) В head страницы используем вывод следующим образом:
    host_tm это статичная переменная, путь к шаблону. Можно использовать что-то вроде /manager/templates/design…
    [[!fileversion?input=`[[++host_tm]]/css/style-modal.css`]] - необходим путь от корня сайта.
    Пример:
    <link rel="stylesheet" type="text/css" href="[[!fileversion?input=`[[++host_tm]]/css/style-modal.css`]]" />
    Да, это не дата изменения, это хеш файла, но при каждом изменении хеш меняется. В итоге стили не приходится CTRL+F5 на странице.
      Сергей
      21 апреля 2018, 13:02
      +1
      Спасибо, работает! Отличное решение :)
        Сергей
        21 января 2020, 16:07
        0
        что то у меня не заработало
          Олег
          21 января 2020, 16:13
          0
          Ну тут я не помогу, без логов и вывода. Функция элементарна.
        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
        5