Как обновлять Coffee CMS если вышла несовместимая версия
Изредка мы будем выпускать новые версии Coffee CMS не совместимые с предыдущими. Несовместимость придумана для того, чтобы не нарушить работу уже существующих сайтов. Чтобы при нажатии кнопки Обновить нельзя было бы сломать рабочий сайт. Но вы все равно сможете обновляться вручную, выполняя определенные шаги по инструкции.
В следующей версии, 23.02, как раз будут такие несовместимые изменения. Мы немного изменили систему шаблонизации - из имен файлов подшаблонов убираем префикс html-, он только вводит путаницу и усложняет код. Соответственно, чтобы движок мог отличить файлы шаблона от других вспомогательных файлов, в имена вспомогательных добавляем точку, они будут выглядеть примерно так: template.settings.php
Чтобы обновиться до этой версии, нужно будет удалить все файлы в папке .cms кроме config.php и папки с вашим шаблоном. После этого распаковать новую версию поверх и готово. Если вы вносили изменения в файл .htaccess, то тоже его сохраните в старом виде.
И все что вам останется еще сделать - это местами подправить php-код в ваших шаблонах. Там где было:
$f = __DIR__ . '/' . $cms["template_prefix"] . $cms['page']['tpl'] . $cms["template_suffix"];
if ( file_exists( $f ) ) { include( $f ); }
или
$f = __DIR__ . "/html-" . $cms["page"]["tpl"] . ".php";
if ( file_exists( $f ) ) include( $f );
Теперь будет:
$f = __DIR__ . "/" . $cms["page"]["tpl"] . ".php";
if ( file_exists( $f ) ) include( $f );
Все это нагромождение с префиксами и суффиксами было попытками совместить разные модули, чтобы результаты их работы в конце концов выводились одним и тем же модулем шаблона. Это было неверное решение и мы теперь его исправляем.
Другие модули по прежнему смогут заменять имя шаблонизирующего файла, но выглядеть в коде это будет аккуратнее и логичнее.