Как получить настройки темы ($theme_settings) на странице? Есть решение

Речь об информационных страницах (/site/#/pages/).

Не доступны значения $theme_settings, как их получить? Пробовал в начало index.html добавить {$wa->globals('theme_settings', $theme_settings)} , но {$wa->globals('theme_settings')} возвращает null в коде контента страницы.

И заодно как подтянуть локализацию из темы?

3 ответа

  • 2
    info@ravencode.ru 23 декабря 2017 11:19 # Решение
    {$theme_id = waRequest::getTheme()}
    {$theme = waTheme::getInstance("$wa_app/themes/`$theme_id`")}
    {$theme_settings = $theme->getSettings()}
  • 2
    Александр Тарасенко 23 декабря 2017 09:54 #

    Ну а если в коде, то копать в эту сторону


    public static function getThemeSettings()
    {
        $theme_id = waRequest::getTheme();
        $theme = new waTheme($theme_id, 'shop');
        return $theme->getSettings();
    }
    • +1
      info@ravencode.ru info@ravencode.ru 23 декабря 2017 10:18 #

      Хм.. а какой это класс? не могу найти этот метод.

      Да и похоже данная тема никому больше не интересна

      ну вот теперь нас двое) если никто ничего не подскажет буду копать, а то не порядок)

      • +1
        Александр Тарасенко Александр Тарасенко 23 декабря 2017 10:55 #

        Это не класс, это пример кода, делаешь минимальный плагин и в нем данную статичную функцию, и собственно вызываешь где нужно.

        {$settings = shopMypluginPlugin::getThemeSettings()}

        • +1
          info@ravencode.ru info@ravencode.ru 23 декабря 2017 11:18 #

          Вы довольно глубоко копнули, не хватило самой малости:

          {$theme_id = waRequest::getTheme()}
          {$theme = waTheme::getInstance("$wa_app/themes/`$theme_id`")}
          {$theme_settings = $theme->getSettings()}
  • 1
    Александр Тарасенко 23 декабря 2017 09:43 #

    Пока никак, https://developers.webasyst.ru/forum/22154/podderz...

    Да и похоже данная тема никому больше не интересна

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

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