Установка значения по умолчанию для значения, определенного конфигурацией?


Как я могу присвоить значение по умолчанию значению конфигурации, которое я определяю в system.xml досье? В настоящее время по умолчанию используется "нет", но я хочу, чтобы по умолчанию было "да".

Вот мой текущий код определения:

<catalog>
            <groups>
                <my_val>
                    <label>My Label</label>
                    <frontend_type>text</frontend_type>
                    <sort_order>160</sort_order>
                    <show_in_default>1</show_in_default>
                    <show_in_website>1</show_in_website>
                    <show_in_store>1</show_in_store>
                    <fields>
                        <my_inner_val translate='label comment'>
                            <label>Enable seperate cart items</label>
                            <frontend_type>select</frontend_type>
                            <source_model>adminhtml/system_config_source_yesno</source_model>
                            <sort_order>1</sort_order>
                            <show_in_default>1</show_in_default>
                            <show_in_website>1</show_in_website>
                            <show_in_store>1</show_in_store>
                        </my_inner_val>
                    </fields>
                </my_val>
            </groups>
        </catalog>
Author: Gershon Herczeg, 2013-03-01

3 answers

Вы можете легко добавить значения по умолчанию для всех параметров конфигурации в config.xml:

<config>
    <default>
        <cms>
            <wysiwyg>
                <enabled>0</enabled>
            </wysiwyg>
        </cms>
    </default>
</config>

На данный момент я не могу сопоставить ваше system.xml имя настройки с узлом в config.xml

Я бы сказал, что это: catalog/my_val/my_inner_val, означает:

<config>
    <default>
        <catalog>
            <my_val>
                <my_inner_val>1</my_inner_val>
            </my_val>
        </catalog>
    </default>
</config>

Маленький совет в конце: Будьте осторожны с настройками int. Иногда magento использует 1 и 2 для да/нет, включения/выключения и т.д.

 33
Author: Fabian Blechschmidt, 2013-03-01 18:03:10

Вы можете назначить значения по умолчанию из config.xml вашего модуля. Определите там узел с таким xpath

config/default/catalog/my_val/my_inner_val.

Надеюсь, это поможет.

 3
Author: Dmitriy Vasilenko, 2013-03-02 15:07:00

Храните значения по умолчанию для пользовательских полей для раздела создания учетной записи модуля клиента:

<stores>
    <default>
        <customer>
            <create_account>
                <postcode_validation>postcodevalidation-GB</postcode_validation>
                <postcode_format>Accepted Formats:- AA9A 9AA, A9A 9AA, A9 9AA, A99 9AA, AA9 9AA, AA99 9AA</postcode_format>
                <postcode_regexp>([A-Z])([A-Z])([0-9])([A-Z]) ([0-9])([A-Z])([A-Z]),([A-Z])([0-9])([A-Z]) ([0-9])([A-Z])([A-Z]),([A-Z])([0-9]) ([0-9])([A-Z])([A-Z]),([A-Z])([0-9])([0-9]) ([0-9])([A-Z])([A-Z]),([A-Z])([A-Z])([0-9]) ([0-9])([A-Z])([A-Z]),([A-Z])([A-Z])([0-9])([0-9]) ([0-9])([A-Z])([A-Z])</postcode_regexp>
                <postcode_uppercase>1</postcode_uppercase>
            </create_account>
        </customer>
    </default>
</stores>

 0
Author: Hassan Ali Shahzad, 2019-11-27 12:31:01