Вставка текста из файла в блок?

Добрый день.

В описании продукта использую набор блоков. Но хочется какой-то автоматизации))

Сейчас для каждого товара приходится создавать Блок1_товар, Блок2_товар и т.д.

Хочу сделать один Блок1 , который бы включал все нужное мне оформление и текст из тестового файла.

Как-то так:

<p class="description">
    {include file="/wa-data/public/tmp/{$product.name}.txt"}<br></p>

но что-то такая конструкция не работает. "Синтаксическая ошибка в блоке" выводит на странице.

Подскажите как это правильно сделать и если таких файлов будет несколько как добавить номер к имени файла?

{$product.name}1.txt

1 ответ

  • 2

    Очень странная "автоматизация".. а файлы как обновлять будете? Вручную по фтп?

    Используйте доп. параметры товара (вкладка "Описание и СЕО")

    Если сложно выглядит, то поставьте плагин https://www.webasyst.ru/store/plugin/shop/advancedparams/ и будет сколько-угодно блоков, а кроме того массово заполнять сможете.

    • +1
      Shkv-72 Shkv-72 19 декабря 2019 15:49 #

      Может я ошибаюсь

      $product.name

      берет название продукта с карточки товара, куда он вставлен.

      include искало бы тхт файл с таким именем.

      т.е для продукта у меня был бы набор блоков в описании

      wa->block(1block)

      wa->block(2block)

      соотв каждый блок искал соотв файл с описанием

      $product.name1.тхт и т.д.

      Проще же залить три-четыре тхт файла, да по фтп. чем плодить блоки.

      Я где-то ошибаюсь?

      Даже просто ради интереса, подскажите в чем синтаксическая ошибка. Или такой инклуде вообще не возможен?

      • +2

        "Синтаксической ошибкой" назовётся практически любая ошибка при выполнении кода блока.

        В данном случае файла не существует, вот и ругается.

        С относительным путём должно сработать:

        {include file="./wa-data/public/tmp/{$product.name}.txt"}

        или абсолютным, но от корня диска

        {include file="/var/www/user/..../wa-data/public/tmp/{$product.name}.txt"}

        Но само решение так себе. Оно абсолютно не учитывает наличие файлов на сервере, кодировку названия, спец символы и т.п. А ещё теоретически начнёт исполнять Smarty в этих файлах.

        Вот у вас заработает, кто-то придёт на форум и сделает так же... а так не надо делать.

Добавить ответ

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