Добавляем в шаблонизатор DLE возможность оставлять правильные комментарии в коде
ПафНутиЙ 05.05.2015 Блог 4976 6 комментариев
Любой, уважающий себя, разработчик оставляет комментарии в коде.
С php проблем нет — комментарии не выводятся в браузер.
С js и css, при минификации тоже всё просто, парсер вырезает комментарии.
С html сложнее, но это html и отловить незакрытый тег бывает очень сложно без комментариев.
А вот .tpl файлы DLE сейчас поддерживают только html комментарии, являясь при этом компилируемыми файлами.
Этот простой хак добавляет возможность оставлять комментарии в коде, которые не будут выведены в браузер.
Установка
- Открываем файл /engine/classes/template.class.php
- Находим строку:
$this->template = file_get_contents( $this->dir . "/" . $tpl_name );
- Ниже вставляем:
if (strpos ( $this->template, "{*" ) !== false) {
$this->template = preg_replace("'\\{\\*(.*?)\\*\\}'si", '', $this->template);
} - Далее находим код:
$template = file_get_contents( $templatefile );
- Ниже вставляем:
if (strpos ( $template, "{*" ) !== false) {
$template = preg_replace("'\\{\\*(.*?)\\*\\}'si", '', $template);
} - Установка завершена.
Использование
Использовать комментарии можно в любом шаблоне, главное соблюдать синтаксис:
{* Комментарий *}
Можно писать комментарии в несколько строк:
{*
Комментарий
в несколько строк
*}
Всё, что заключено между тегами {* и *} будет удалено из вывода в браузер.
Вот так легко можно добавить много удобства себе и окружающим при разработке сайта на DLE.