Бэкэнд модуль для Magento 1.9.x - PullRequest
0 голосов
/ 30 января 2019

Я хочу построить новый модуль для Magento 1.9.4, который будет показан в области администратора (каталог).Я запрограммировал следующий код, но я не знаю, как показать этот модуль в бэкэнде (включая теги формы).Я просто получаю ошибку 404.

Вот мой код, с которого я запустил свой первый модуль:

config.xml

<?xml version="1.0"?>
    <config>
        <modules>
          <Eron_ChangePricesPerCategory>
            <version>0.1.0</version>
          </Eron_ChangePricesPerCategory>
        </modules>
        <frontend>
          <routers>
            <changepricespercategory>
              <use>standard</use>
              <args>
                <module>Eron_ChangePricesPerCategory</module>
                <frontName>changepricespercategory</frontName>
              </args>
            </changepricespercategory>
          </routers>
        </frontend>
        <admin>
          <routers>
            <changepricespercategory>
             <use>admin</use>
             <args>
              <module>Eron_ChangePricesPerCategory</module>
              <frontName>admin_changepricespercategory</frontName>
             </args>
            </changepricespercategory>
          </routers>
        </admin>
        <global>
          <helpers>
            <changepricespercategory>
              <class>Eron_ChangePricesPerCategory_Helper</class>
            </changepricespercategory>
          </helpers>
        </global>
        <adminhtml>
        <layout> 
            <updates> 
                <eron_changepricespercategory> 
                    <file>eron_changepricespercategory.xml</file> 
                </eron_changepricespercategory> 
            </updates> 
        </layout> 
    </adminhtml>
    </config>

adminhtml.xml

<?xml version="1.0"?>
<config>
    <acl>
        <resources>
            <admin>
                <children>
                    <system>
                        <children>
                            <config>
                                <children>
                                    <changepricespercategory_settings translate="title">
                                        <title>Extra Fee Settings</title>
                                        <sort_order>55</sort_order>
                                    </changepricespercategory_settings>
                                </children>
                            </config>
                        </children>
                    </system>
                </children>
            </admin>
        </resources>
    </acl>
</config>

system.xml

<?xml version="1.0"?>
<config>
    <sections>
                <changepricespercategory translate="label" module="changepricespercategory">
                    <label>Artikelpreise pro Kategorie ändern</label>
                    <tab>catalog</tab>
                    <frontend_type>text</frontend_type>
                    <sort_order>999</sort_order>
                    <show_in_default>1</show_in_default>
                    <show_in_website>1</show_in_website>
                    <show_in_store>1</show_in_store>
                    <fields>
                        <active translate="label">
                            <label>Aktiviert</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>
                        </active>
                        <title translate="label">
                            <label>Title</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>
                        </title>
                        <name translate="label">
                            <label>Name</label>
                            <frontend_type>text</frontend_type>
                            <sort_order>30</sort_order>
                            <show_in_default>1</show_in_default>
                            <show_in_website>1</show_in_website>
                            <show_in_store>1</show_in_store>
                        </name>
                        <showmethod translate="label">
                            <label>Versandart zeigen, auch wenn nicht möglich</label>
                            <frontend_type>select</frontend_type>
                            <sort_order>50</sort_order>
                            <source_model>adminhtml/system_config_source_yesno</source_model>
                            <show_in_default>1</show_in_default>
                            <show_in_website>1</show_in_website>
                            <show_in_store>1</show_in_store>
                        </showmethod>
                        <specificerrmsg translate="label">
                            <label>Angezeigte Fehlermeldung</label>
                            <frontend_type>textarea</frontend_type>
                            <sort_order>60</sort_order>
                            <show_in_default>1</show_in_default>
                            <show_in_website>1</show_in_website>
                            <show_in_store>1</show_in_store>
                        </specificerrmsg>
                        <sort_order translate="label">
                            <label>Reihenfolge</label>
                            <frontend_type>text</frontend_type>
                            <sort_order>70</sort_order>
                            <show_in_default>1</show_in_default>
                            <show_in_website>1</show_in_website>
                            <show_in_store>1</show_in_store>
                        </sort_order>
                    </fields>
                </changepricespercategory>
    </sections>
</config>

IndexController.php (в контроллерах / Adminhtml)

<?php
class Eron_ChangePricesPerCategory_Adminhtml_IndexController extends Mage_Adminhtml_Controller_Action {
  /**
  * Admin controller index action
  *
  * @access public
  * @return void
  */
  public function indexAction() {
        $Block = $this->getLayout()->createBlock('changepricespercategory/Adminhtml_changepricespercategory');
        $this->loadLayout()
        ->_addContent($Block)
        ->renderLayout(); 
  }
}

Модуль показан в бэкэнде ... Но когда я нажимаю на него, я получаю 404. Кто-нибудь может мне помочь?Возможно, есть хорошая документация - я новичок в разработке модулей magento.

Дополнительная информация: Я хочу построить модуль для изменения всех цен категории на процент (например, увеличение на 2%).

1 Ответ

0 голосов
/ 27 июля 2019

Вы можете начать с этого общего количества: https://bsscommerce.com/confluence/3-simple-steps-to-create-admin-grid-in-magento-1/

Если вы хотите попробовать больше возможностей, отметьте это: https://www.codealist.com/magento-1-9-x-create-an-adminhtml-controller/

...