Jump to content

Recommended Posts

Доброго дня! 

Никак не могу понять и победить Smarty в частности, сжимать данные находящиеся под {literal} в теле страницы.

Smarty подключен через Composer

config/config.php - smarty_html_minify = true;

Основной код сжимается, но данные под {literal} остаются неизменными.

{ldelim},{rdelim} не работает

 

Есть какие-то ходы? 

Кто-то может подсказать как сжимать? 

Link to post
Share on other sites

Можете попробовать http://forum.simplacms.ru/topic/8324-html-сжатие-страницы-simpla-cms-smarty/?p=62956

А вообще если уже хотите сжимать html на лету - то лучше использовать что то серверное а не php 

 
Скопируйте себе метод template_min и его подключение:
        if($this->config->smarty_html_minify)
            $this->smarty->registerFilter('pre', array($this, 'template_min'));
Edited by yr4ik
Link to post
Share on other sites

 

Можете попробовать http://forum.simplacms.ru/topic/8324-html-сжатие-страницы-simpla-cms-smarty/?p=62956

А вообще если уже хотите сжимать html на лету - то лучше использовать что то серверное а не php 

 
Скопируйте себе метод template_min и его подключение:
        if($this->config->smarty_html_minify)
            $this->smarty->registerFilter('pre', array($this, 'template_min'));

 

Взял ваше решение и не понял чем оно отличается от вшитого в Smarty - Trimwhitespace

Основной код так же сжался, а вот под {literal} остались неизменными 

 

Использую Simpla 2.3.8 Smarty 3.1.34 стандартный шаблон и функционал без изменений

Link to post
Share on other sites

Смысл тега {literal} в Smarty - то, что находится в этом теге НЕ ОБРАБАТЫВАЕТСЯ Smarty 

Если хотите чтобы обрабатывалось убирайте {literal} и решайте вопросы со скриптами другим способом

Link to post
Share on other sites

Смысл тега {literal} в Smarty - то, что находится в этом теге НЕ ОБРАБАТЫВАЕТСЯ Smarty 

Если хотите чтобы обрабатывалось убирайте {literal} и решайте вопросы со скриптами другим способом

Смысл ясен, читал руководство по Smarty и {literal}

Спасибо, значит буду решать другим способом.

Link to post
Share on other sites

Смысл ясен, читал руководство по Smarty и {literal}

Спасибо, значит буду решать другим способом.

 

90% процентов ошибок внутри literal - это фигурные скобки без пробелов "{(" или "текст}" - банально добавьте пробелов в эти места, может и поможет такое решение

Link to post
Share on other sites

Взял ваше решение и не понял чем оно отличается от вшитого в Smarty - Trimwhitespace

Основной код так же сжался, а вот под {literal} остались неизменными 

 

Использую Simpla 2.3.8 Smarty 3.1.34 стандартный шаблон и функционал без изменений

 

Разница в том что вшитый Smarty - Trimwhitespace выполняется каждый раз как только открывается страница. А через template_min сжатие выполнится разово перед тем как сгенерируется файл для папки compiled  

 

и по идее literal он должен был обработать. Возможно после вставки кода - вы не очистили папку compiled 

Edited by yr4ik
Link to post
Share on other sites

Разница в том что вшитый Smarty - Trimwhitespace выполняется каждый раз как только открывается страница. А через template_min сжатие выполнится разово перед тем как сгенерируется файл для папки compiled  

 

и по идее literal он должен был обработать. Возможно после вставки кода - вы не очистили папку compiled 

 

Прописал ваш код, изменил данные в config. Ничего не изменилось пока не очистил папку compiled. Проверил исходный код, literal не изменился

Link to post
Share on other sites

Ну код не сжимает то что находится внутри html тегов <script|textarea|pre>.

И стандартный smarty тоже. {literal} тут ни при чем 

 

Если хотите сжать js или css - то это не в этом направлении. 

Edited by yr4ik
Link to post
Share on other sites

Ну код не сжимает то что находится внутри html тегов <script|textarea|pre>.

И стандартный smarty тоже. {literal} тут ни при чем 

 

Очень жаль, что не сжимает. Пока обойдусь, но нужно будет как-то решить вопрос сжатия html тегов </script> и </style>. Не вписывая их по файлам. Так как есть куски, которые работают на определенных страницах.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...