Как Magento назначает обработчика конкретного URL

[16 июля 2019 г.]    Российская сборка Magento 2.52.2
Magento 2: модули и услуги
magereport.com: составление перечня необходимых для установки заплаток SUPEE
#1 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8995
  • Регистрация: 20.02.2010

01.02.2011 19:54

Пояснение к структуре адресов страниц Magento

Адреса страниц в Magento подчиняются структуре route/controller/action

route - название вашего маршрутизатора.
Вы определяете маршрутизаторы в файле config.xml вашего модуля.
Например, в модуле Mage_Adminhtml марщрутизатор описан так:

<config>
    <admin>
        <routers>
            <adminhtml>
                <use>admin</use>
                <args>
                    <module>Mage_Adminhtml</module>
                    <frontName>admin</frontName>
                </args>
            </adminhtml>
        </routers>
    </admin>
</config>



Эта запись означает, что адреса страниц Magento, начинающиеся с admin, будут обрабатываться контроллерами модуля Mage_Adminhtml.

Какой конкретно контроллер будет обрабатывать конкретный адрес - определяется второй структурной частью адреса - controller.
Например, адрес /admin/catalog_product/index/ будет обрабатывать контроллер Mage_Adminhtml_Catalog_ProductController, потому что вторая структурная часть адреса - catalog_product.

Третья структурная часть адреса определяет вызываемый метод контроллера.
Например: для обработки адреса /admin/catalog_product/new/ вызовется метод newAction класса Mage_Adminhtml_Catalog_ProductController

Третья часть может отсутствовать, тогда Magento считает её равной index.


Читайте также Структура адреса страницы (URL) в Magento

Поделиться темой: