Примеры:
- Mage_Adminhtml_Sales_Block_Order_Grid
- Df_1C_Model_Cml2_Import_Processor_Product
- Mage_Core_Helper_File_Storage
- Varien_Data_Form_Element_Select
Каждому классу Magento соответствует ровно один файл с программным кодом этого класса.
Каждому файлу с программным кодом класса Magento соответствует ровно один класс Magento.
По имени класса Magento можно легко найти его путь в файловой системе:
- Замените в имени класса символ подчёркивания «_» на символ файлового пути «/».
Для указанных выше примеров классов получим файловые пути:
- Mage/Adminhtml/Sales/Block/Order/Grid
- Df/1C/Model/Cml2/Import/Processor/Product
- Mage/Core/Helper/File/Storage
- Varien/Data/Form/Element/Select
- Mage/Adminhtml/Sales/Block/Order/Grid
- Добавьте в конце полученного файлового пути файловое расширение «.php»:
Для указанных выше примеров классов получим файловые пути:
- Mage/Adminhtml/Sales/Block/Order/Grid.php
- Df/1C/Model/Cml2/Import/Processor/Product.php
- Mage/Core/Helper/File/Storage.php
- Varien/Data/Form/Element/Select.php
- Mage/Adminhtml/Sales/Block/Order/Grid.php
- Полученные пути к файлам с программным кодом классов являются относительными.
Чтобы определить полный файловый путь, надо узнать, из какой области программного кода система берёт конкретный класс.
В Magento 4 области программного кода: «lib», «core», «community», «local».
В англоязычной терминологии Magento область программного кода называется «code pool».
- Один и тот же класс может быть расположен в любой из указанных 4-х областей программного кода, и даже в нескольких областях программного кода одновременно.
- Если файл с программным кодом класса расположен сразу в нескольких областях программного кода, то система загружает программный код класса из той области, которая обладает большим приоритетом.
- Области программного кода перечислены выше в порядке увеличения их приоритета для системы.
Другими словами, если файл с программным кодом класса расположен одновременно в областях «core» и «local», то система будет использовать файл из области «local».
- Один и тот же класс может быть расположен в любой из указанных 4-х областей программного кода, и даже в нескольких областях программного кода одновременно.
- Добавьте название области программного кода перед относительным файловым путём класса в качестве родительской файловой папки:
Например:
- core/Mage/Adminhtml/Sales/Block/Order/Grid.php
- local/Df/1C/Model/Cml2/Import/Processor/Product.php
- core/Mage/Core/Helper/File/Storage.php
- lib/Varien/Data/Form/Element/Select.php
- core/Mage/Adminhtml/Sales/Block/Order/Grid.php
- Если файл с программным кодом класса Magento расположен не в области программного кода «lib», а в любой из 3-х остальных программных областей, то добавьте в начале полученного пути «app/code/»:
Например:
- app/code/core/Mage/Adminhtml/Sales/Block/Order/Grid.php
- app/code/local/Df/1C/Model/Cml2/Import/Processor/Product.php
- app/code/core/Mage/Core/Helper/File/Storage.php
- lib/Varien/Data/Form/Element/Select.php
Полученные пути являются полными путями к файлам с программным кодом классов относительно корневой папки Magento. - app/code/core/Mage/Adminhtml/Sales/Block/Order/Grid.php