Запретить сохранять синтаксически невалидный шаблон

5

Почему бы не запретить сохранять шаблон с синтаксическими и лексическими ошибками, если не включен режим разработки?

Например 

{if $p}
    // ... 
{if} // должно быть {/if}

7 комментариев

  • +1
    Eugen Nichikov Eugen Nichikov 13 января 2020 17:22 #

    Могут быть подводные камни в реализации, но идея, имхо, здравая.

  • +1
    Алексей Алексей Webasyst 13 января 2020 18:14 #

    Здесь может быть много сложностей с анализом при наличии переменных и include из сторонних файлов.

    • +1
      Eugen Nichikov Eugen Nichikov 13 января 2020 20:06 #

      Да, но не обязательно анализировать содержимое переменных и инклюдов (выполнять шаблон). Достаточно было бы проверить синтаксис. Ведь, действительно, бывает какое-то <style>img{width:100%... которое ломает страницу.

      • +1
        Syrnik.com Syrnik.com 14 января 2020 21:19 #

        imho тут не анализатор шаблонов делать надо, а убрать подальше возможность напрямую редактировать файлы шаблонов :)

        нечего туда лазить шаловливыми ручками с вопросами "где мне указать 'position: fixed' ?"

        • +1
          Eugen Nichikov Eugen Nichikov 14 января 2020 23:50 #

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

        • +1
          Quasar Quasar 15 января 2020 00:11 #

          Как по мне, удобная тема, мне проще зайти в админку и быстро пофиксить, чем ходит по фтп и заливать правки. 

        • +1
          Quasar Quasar 15 января 2020 00:19 #

          Да, Женя правильно понял мою идею, достаточно чекнуть скобки, невалидные токены, и что-нибудь ещё что не пришло в голову, чтобы понять, что сам шаблон синтаксически и лексически валидный. 

          Добавить комментарий

          Чтобы добавить комментарий, зарегистрируйтесь или войдите