Как вывести категории в Accordion::widget?

Для того чтобы вывести категории в виде аккордеона с помощью виджета Accordion в Yii, вам потребуется выполнить несколько шагов.

1. Установите расширение yii2-widgets с помощью Composer, добавив его в файл composer.json вашего проекта:

"require": {
    "yiisoft/yii2-widgets": "~2.1"
}

Затем выполните команду composer update, чтобы установить пакет.

2. Создайте представление, в котором вы хотите отобразить аккордеон. Например, вы можете создать файл views/site/accordion.php. В этом файле вы можете использовать виджет Accordion для отображения категорий:

use yiibootstrapAccordion;

$items = [
    [
        'header' => 'Category 1',
        'content' => 'Content for Category 1',
        'options' => ['tag' => 'div'],
    ],
    [
        'header' => 'Category 2',
        'content' => 'Content for Category 2',
        'options' => ['tag' => 'div'],
    ],
    // Добавьте другие категории по аналогии
];

echo Accordion::widget([
    'items' => $items,
    'options' => ['tag' => 'div'],
    'itemOptions' => ['tag' => 'div'],
    'headerOptions' => ['tag' => 'h3'],
    'clientOptions' => ['collapsible' => true],
]);

Приведенный код создает массив $items, в котором содержатся данные для каждой категории - заголовок, содержимое и настройки. В этом примере созданы две категории, но вы можете добавить столько, сколько вам нужно. Затем виджет Accordion используется для их отображения. Параметры options, itemOptions, headerOptions и clientOptions используются для настройки внешнего вида и поведения аккордеона.

3. Чтобы отобразить представление accordion.php в вашем контроллере или другом месте фреймворка Yii, вы можете использовать метод render():

echo $this->render('site/accordion');

Теперь, когда вы вызываете соответствующий контроллер или действие, вы увидите категории в виде аккордеона.

Это лишь один из способов использования виджета Accordion в Yii. В зависимости от ваших потребностей, вы можете изменить настройки и оформление аккордеона, а также создавать категории динамически из базы данных или других источников данных.