Почему переменная в Twig возвращает null в Opencart 3?

Тема в разделе "Ошибки и их решения", создана пользователем Kstein, 20 май 2024.

  1. Kstein

    Kstein Новичок

    Сообщения:
    29
    Симпатии:
    2
    В контроллере производителя под кодом:
    $this->document->setTitle($this->language->get('heading_title'));

    добавил:
    $data['current_url'] = 'manufacturer';

    В шаблоне:
    <p class="url-test">{{ current_url | json_encode(constant('JSON_PRETTY_PRINT')) }}</p>


    Не описываю смысл, но не понятно, почему переменная не передаётся.
     
  2. devimirochnik

    devimirochnik Продвинутый пользователь

    Сообщения:
    865
    Симпатии:
    113
    Ну вы обычную строку пытаетесь кодировать как json - ничего удивительного
     
  3. Kstein

    Kstein Новичок

    Сообщения:
    29
    Симпатии:
    2
    Без декодирования всё равно выводится без значения:
    <p class="url-test"></p>
     
  4. devimirochnik

    devimirochnik Продвинутый пользователь

    Сообщения:
    865
    Симпатии:
    113
    А вы $data во вьюху передаёте?
     
  5. Kstein

    Kstein Новичок

    Сообщения:
    29
    Симпатии:
    2
    Да, у меня так:
    <p class="url-test">{{ current_url }}</p>
     
  6. devimirochnik

    devimirochnik Продвинутый пользователь

    Сообщения:
    865
    Симпатии:
    113
    Сам массив $data во вьюху-то передаёте или может параметр после генерации вьюхи формируете?
     
  7. devimirochnik

    devimirochnik Продвинутый пользователь

    Сообщения:
    865
    Симпатии:
    113
    Ещё вариант - попробуйте поменять название параметра в test
     
  8. devimirochnik

    devimirochnik Продвинутый пользователь

    Сообщения:
    865
    Симпатии:
    113
    Так же ещё модификаторы обновить, кэш твига почистить
     
  9. Kstein

    Kstein Новичок

    Сообщения:
    29
    Симпатии:
    2
    А разве он не передаётся изначально? Стандартные переменные из него выводятся.
     
  10. Kstein

    Kstein Новичок

    Сообщения:
    29
    Симпатии:
    2
    Спасибо за идеи. Но test тоже пустой.
     
  11. Kstein

    Kstein Новичок

    Сообщения:
    29
    Симпатии:
    2
    Кеш модификаторов и кеш темы на главной странице административной панели я тоже обновлял.
     
  12. Tesloz

    Tesloz Специалист

    Сообщения:
    115
    Симпатии:
    54
    Там 2 шаблона, если я верно понял куда вы добавили код, ваша переменная будет выводиться в шаблоне manufacturer_list.twig -
    возможно вы хотите вывести в шаблоне manufacturer_info.twig, тогда добавляйте ваш код в контролере в методе info()
     
    Blast нравится это.
  13. Kstein

    Kstein Новичок

    Сообщения:
    29
    Симпатии:
    2
    Большое спасибо! Помогло. Если я могу как-то отблагодарить, то напишите, пожалуйста.
     
    Tesloz нравится это.