![]()
Несмотря на то, что приложение совместимо со старой версией PHP 7.4, рекомендуем использовать его на системах с PHP 8.0 для более быстрой и стабильной работы
С помощью приложения вы можете создать и настроить различные меню для фронтенда вашего сайта.
Задать структуру нового меню можно при помощи простого визуального редактора. Автоматическая генерация ссылок на отдельные разделы сайта (например, категории магазина), доступна при помощи устанавливаемых плагинов.
После создания структуры вы можете протестировать её в разделе "Информация".
Установка меню на сайт
Если ваша тема дизайна не поддерживает приложение по умолчанию, то вам потребуются базовые знания HTML-вёрстки, чтобы модифицировать шаблоны.
При помощи следующего кода можно получить массив элементов определённого меню. Обратите внимание, что $menu_id — это ID определённого меню.
, $user_id - это ID пользователя.{$user_id = $wa->user("id")}
{$items = $wa->menu->get($menu_id,$user_id)}
или
{$items = $wa->menu->get($menu_id,$wa->user("id"))}
Следующий шаг — создать HTML структуру вашего меню. Самый простой способ это сделать — использовать функцию wa_print_tree, которая выведет вложенную структуру UL списков:
{wa_print_tree tree=$items elem='<a href=":url">:name</a>'}
Немного более продвинутый способ — использовать циклы Smarty, например foreach.
<nav class="menu">
{* цикл по элементам верхнего уровня *}
{foreach $items as $item}
<div class="menu-item">
{* отрисовка ссылки *}
<a href="{$item.url}">{$item.name}</a>
{* у элемента могут быть вложенные элементы *}
{if !empty($item.childs)}
<div class="menu-item-childs">
{* цикл по элементам второго уровня *}
{foreach $item.childs as $child}
<div class="menu-item-child">
{* отрисовка ссылки *}
<a href="{$item.url}">{$item.name}</a>
{* далее могут быть ещё вложенные элементы: {$child.childs} и т.д. *}
</div>
{/foreach}
</div>
{/if}
</div>
{/foreach}
</nav>
Кэширование
В приложении используется кеш для снижения нагрузки на сервер. Вы можете изменить время жизни кеша на странице настроек.
По умолчанию используется файловый кеш. Но следуя этому руководству вы можете изменить настройки кэша вашего Webasyst:
https://developers.webasyst.ru/features/cache/
Для каждого пункта меню вы можете указать цель - к примеру, открывать на новой вкладке. Обратите внимение, для того чтобы это работало, нужна интеграция с темой дизайна. Если ваш шаблон не поддерживает этот пункт, вам нужно самостоятельно при выводе ссылки добавить код вида:
{if $link.target}target="{$link.target}"{/if}
Пример:
{if count($pages)}
{foreach $pages as $p}
<div class="footer-menu__item">
<a class="footer-menu__link" href="{$p.url}" {if $p.target}target="{$p.target}"{/if}>{$p.name}</a>
</div>
{/foreach}
{/if}
![]()
Хотите быть в курсе новостей от Webasyst и Shop-Script, обсудить новый функционал, обменяться опытом с коллегами? Задать вопрос Независимым Разработчикам или найти Исполнителя на проект? Вступайте и пиши в крупнейшее независимое сообщество "Webasyst для всех": Телеграм чат (https://t.me/webasyst_for_all)
Плавающие кнопки мессенджеров и всплывающее окно
5.0× 11
Разные формы регистрации для персон и компаний
4.5× 28
Форма обратной связи для любого приложения
Все виды скидок. Конструктор из 93 правил скидок
7 дней бесплатно
4.4 × 52
Конвертация в современный формат с поддержкой iOS
7 дней бесплатно
5.0 × 9
Разные цены для витрин или для групп покупателей
7 дней бесплатно
4.6 × 109
Быстрая покупка товаров, полноценный заказ в 1 шаг
7 дней бесплатно
5.0 × 60
Скрытие доставки или оплаты по множеству критериев
7 дней бесплатно
4.5 × 20
Сео-оптимизация картинок товаров в магазине
7 дней бесплатно
4.1 × 37
Отбор заказов по параметрам и экспорт в XLSX/CSV.
7 дней бесплатно
4.8 × 6
Удаляет неиспользуемые значения характеристик
7 дней бесплатно
4.8 × 9
Убираем слово Бесплатно из корзины
7 дней бесплатно
4.7 × 157
Авто и ручная отправка email SMS клиентам
7 дней бесплатно
4.9 × 16
Отслеживание прочтения сообщений покупателем
7 дней бесплатно
HTML-шаблон email действия «Написать клиенту»
7 дней бесплатно
5.0 × 6
Загрузка фото для товаров напрямую из Интернета
7 дней бесплатно
4.6 × 8
Стикеры для товаров: легко, стильно, эффективно!
7 дней бесплатно
5.0 × 1
Мгновенный доступ к товарам без категории
7 дней бесплатно
Причина удаления/возврата заказа в бекенде + отчёт
7 дней бесплатно
4.8 × 65
Стильная и функциональная форма запроса звонка.
7 дней бесплатно
Сортировка товаров по приоритету и не только
7 дней бесплатно
4.0 × 8
Удалите лишние файлы, чтобы освободить место
7 дней бесплатно
5.0 × 3
Авто-создание тегов из характеристик, категорий...
7 дней бесплатно
5.0 × 1
Добавляет возможность уточнить адрес на карте
7 дней бесплатно
5.0 × 2
Поиск информации о ваших товарах на других сайтах
7 дней бесплатно
5.0 × 31
Шаблоны для отправки сообщений из заказа.
7 дней бесплатно
4.8 × 28
Позволяет покупателю задать вопрос о товаре.
7 дней бесплатно
4.9 × 50
Отличное дополнение фильтров в категории
7 дней бесплатно
4.7 × 16
Скидки, подарки, N+M, купоны с выгрузкой в ЯМаркет
7 дней бесплатно









