1

私はモジュールを持っています。それには管理者の構成が必要です。admin->system->configuration でメニューを作成する方法と、そのカスタム メニューに項目を追加する方法がわかりません....助けてください....

4

1 に答える 1

1

モジュールに新しい構成メニューを追加するための 4 つのファイルが含まれます。モジュールにすでにヘルパー クラス Data.php がある場合、必要な xml ファイルは 2 つだけです。ヘルパー クラス Data.php は空にすることができます。管理パネルに新しいメニュー構成をロードするために必要なだけです。最も重要な 2 つの xml ファイルは、モジュールの etc フォルダーにあるadminhtml.xmlおよびsystem.xmlファイルです。

サンプルの adminhtml.xml

<?xml version="1.0" encoding="UTF-8"?>
<config>
    <acl>
        <resources>
            <admin>
                <children>
                    <system>
                        <children>
                            <config>
                                <children>
                                    <helloworld_setting>
                                        <title>Hello World</title>
                                    </helloworld_setting>
                                </children>
                            </config>
                        </children>
                    </system>
                </children>
            </admin>
        </resources>
    </acl>
</config>

サンプルの system.xml

<?xml version="1.0" encoding="UTF-8"?>
<config>
    <tabs>
        <helloworld translate="label" module="helloworld">
            <label>Hello World</label>
            <sort_order>99999</sort_order>
        </helloworld>
    </tabs>
    <sections>
        <helloworld_setting translate="label" module="helloworld">
            <label>Settings</label>
            <tab>helloworld</tab>
            <frontend_type>text</frontend_type>
            <sort_order>99</sort_order>
            <show_in_default>1</show_in_default>
            <show_in_website>1</show_in_website>
            <show_in_store>1</show_in_store>
            <groups>
                <greeting_settings translate="label">
                    <label>Greeting Settings</label>
                    <frontend_type>text</frontend_type>
                    <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>
                    <fields>
                        <enabled translate="label">
                            <label>Enabled</label>
                            <frontend_type>select</frontend_type>
                            <source_model>adminhtml/system_config_source_yesno</source_model>
                            <sort_order>10</sort_order>
                            <show_in_default>1</show_in_default>
                            <show_in_website>1</show_in_website>
                            <show_in_store>1</show_in_store>
                        </enabled>
                        <greeting translate="label,comment">
                            <label>Greeting</label>
                            <frontend_type>text</frontend_type>
                            <sort_order>20</sort_order>
                            <show_in_default>1</show_in_default>
                            <show_in_website>1</show_in_website>
                            <show_in_store>1</show_in_store>
                            <comment>Greeting text.</comment>
                        </greeting>
                    </fields>
                </greeting_settings>
            </groups>
        </helloworld_setting>
    </sections>
</config>

設定メニューで設定した値を取得するには

//sectionName/groupName/fieldName
echo Mage::getStoreConfig('helloworld_setting/greeting_settings/enabled');
echo Mage::getStoreConfig('helloworld_setting/greeting_settings/greeting');

問題がある場合は、コードの変更後にキャッシュがクリアされていることを確認し、xml ファイルにタイプミスがないことを再確認してください。

于 2014-08-12T00:47:11.767 に答える