msPre добавление кастомного поля (списка с автодополнением)

1. Данный способ очень простой
2. Данный вариант сотрётся с большой долей вероятности при обновлении компонента.
3. Добавление дополнительного поля не описывается



Мне нужно было добавить поле season (список с автодополнением), аналогичный как size, color, tags.
Надо отредактировать 2 файла:
1) core/components/mspre/model/meta/data/fields.php
2) core/components/mspre/model/actions/product.class.php

В первом файле находим:
'size' => array(
        'id' => 'size',
        'dataIndex' => 'size',
        'sortable' => false,
        'editor' => array(
            'name' => 'size',
            'xtype' => 'loadComboFields',
        ),
        'actions' => array(
            'new' => 'mspre-combo-options',
            'old' => 'mspre-combo-autocomplete-options',
            'replace' => 'mspre-combo-options',
            'remove' => 'mspre-combo-autocomplete-options',
        ),
    ),
И после него добавляем аналогично
'season' => array(
        'id' => 'season',
        'dataIndex' => 'season',
        'sortable' => false,
        'editor' => array(
            'name' => 'season',
            'xtype' => 'loadComboFields',
        ),
        'actions' => array(
            'new' => 'mspre-combo-options',
            'old' => 'mspre-combo-autocomplete-options',
            'replace' => 'mspre-combo-options',
            'remove' => 'mspre-combo-autocomplete-options',
        ),
    ),
Во втором файле находим:
2 => array(
                    'menu' => true,
                    'cls' => '',
                    'combo_id' => 'size',
                    'icon' => 'icon icon-square-o',
                    'title' => 'size',
                    #'title' => $this->lexicon('mspre_action_image_generation'),
                    'action' => 'loadComboDefaultOptions',
                ),
И после него добавляем аналогично
3 => array(
                    'menu' => true,
                    'cls' => '',
                    'combo_id' => 'season',
                    'icon' => 'icon icon-square-o',
                    'title' => 'season',
                    #'title' => $this->lexicon('mspre_action_image_generation'),
                    'action' => 'loadComboDefaultOptions',
                ),
Кирилл
15 июня 2021, 14:57
modx.pro
1 508
+2
Поблагодарить автора Отправить деньги

Комментарии: 3

Роман
15 июня 2021, 15:26
0
Это и так понятно, только после обновления все слетит. =) Есть такой ключ mspre_product_json_selected_fields в настройках, там по-моему его можно расширить.
    Кирилл
    15 июня 2021, 17:39
    0
    Да, я это понимаю, я потому и указал про это.
    Но так как способ довольно быстро реализуем, то в этом случае так быстрее для меня было.
    Ruslan Butakov
    13 марта 2023, 15:42
    0
    Добрый день.
    Как правильно сделать возможность массового редактирования цен, если кроме тех что имеет minishop2 созданы дополнительно в виде TV полей.

    Пробовал в настройках модуля указывать их как:
    ya_price
    tv-ya_price
    перенос или изменение не работают. Хотя в контекстном меню они появляются.
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      3