Антон А.

Антон А.

С нами с 03 ноября 2016; Место в рейтинге пользователей: #536

Создание плагина товара

Привет всем!
Я новичок в ModX. Делаю свой первый интернет-магазин на ModX Revo, решил использовать miniShop2. Первая трудность возникла при добавлении нового свойства товара с помощью плагина товара. С инструкцией ознакомился docs.modx.pro/components/minishop2/development/plug-ins-products.

Что я сделал? Я создал контроллер плагина, сохранил его в index.php и положил его в папку с названием своего плагина: core/components/minishop2/plugins/msplvolume
Содержание файла index.php:
<?php
return array(
    'map' => array(
        'msProductData' => require_once 'msproductdata.inc.php',
    ),
    'manager' => array(
        'msProductData' => MODX_ASSETS_URL . 'components/msplvolume/msproductdata.js',
    ),
);
Пока меня не интересует массив manager (расширение админки), поэтому, я создал только один файл msproductdata.inc.php. В нем я написал, что хочу расширить модель данных продукта, добавив одно целочисленное поле volume. Вот код:
<?php
return array(
    'fields' => array(
        'volume' => 0,
    ),
    'fieldMeta' => array(
        'volume' => array(
            'dbtype' => 'int',
            'precision' => '10',
            'phptype' => 'integer',
            'null' => true,
            'default' => 0,
        ),
    ),
);
Файл msproductdata.inc.php я сохранил в той же папке что и index.php.

Потом я добавил поле в таблицу:
ALTER TABLE `modx_ms2_products` ADD `volume` INT NULL DEFAULT NULL;
Как я понял на этом процесс закончен. Дальше miniShop2 и ModX все сделает сами.

Теперь я пытаюсь получить значение volume и вывести его на странице продукта.
Я по примеру вывода свойства weight, добавил в чанк msProduct.content следующий код:
<div class="form-group">
				<label class="col-sm-2 control-label">Объем: </label>
				<div class="col-sm-3">
					<label class="checkbox">[[+volume]] мл.</label>
				</div>
			</div>
В итоге объем не выводится. Подскажите, пожалуйста, что я делаю не так?
Антон А.
03 ноября 2016, 03:57
modx.pro
1
3 612
0