Получение путей к системным директориям Magento.
Зачастую, при работе с magento возникает необходимость получить пути к основным директориям. Можно плясать от волшебных констант __FILE__ или __DIR__, но лучше этого не делать, а воспользоваться встроенными средствами magento.
Итак, как получить пути к основным директориям magento (для деталей рекомендую заглянуть в класс Mage_Core_Model_Config_Options
):
Mage::getBaseDir(‘base’);
– путь к основному каталогу Magento (корневой), альтернатива – getBaseDir();Mage::getBaseDir(‘app’);
– путь к каталогу приложения Magento (по умолчнию это /app *), где располагается прекрасный final class Mage (Mage.php), альтернатива – getAppDir()Mage::getBaseDir(‘code’);
– путь к базовому каталогу с кодом, где располагаются Magento code pools (core, community, local) (как их назвать правильно по-русски – не знаю) (/app/code *), альтернатива – getCodeDir()Mage::getBaseDir(‘design’);
– путь к каталогу с дизайном (/app/design *), альтернатива – getDesignDir()Mage::getBaseDir(‘etc’);
– путь к каталогу с конфигурациями (/app/etc *), альтернатива – getEtcDir()Mage::getBaseDir(‘lib’);
– путь к каталогу с библиотеками (/lib *), альтернатива – getLibDir()Mage::getBaseDir(‘locale’);
– путь к каталогу с переводами (/app/locale *), альтернатива – getLocaleDir()Mage::getBaseDir(‘media’);
– путь к каталогу с медиа (/media *), альтернатива – getMediaDir()Mage::getBaseDir(‘skin’);
– путь к каталогу с изображениями, стилями, js скриптами тем (/skin *), альтернатива – getSkinDir()Mage::getBaseDir(‘var’);
– путь к калалогу var, где хранятся разного рода файлы, котору меняются в процессе работы магазина (/var *), альтернатива – getVarDir()Mage::getBaseDir(‘tmp’);
– путь к каталогу tem – временной директории для безопасного вывода файлов при немедленной обработке (/var/tmp *), альтернатива - getTmpDir()Mage::getBaseDir(‘cache’);
– путь к каталогу с кешем (/var/cache *), альтернатива – getCacheDir()Mage::getBaseDir(‘log’);
– путь к каталогу с логами (/var/log *), альтернатива - getLogDir()Mage::getBaseDir(‘session’);
– путь к каталогу с пользовательскими сессиями, если в настройках не выбрано хранение их в базе (/var/session *), альтернатива – getSessionDir()Mage::getBaseDir(‘upload’);
– путь к каталогу с различными мультимедийными файлами (/media/upload *), альтернатива – getUploadDir()Mage::getBaseDir(‘export’);
путь к каталогу использумемому для экспортируемых файлов (/var/export *)
Пример использования альтернативного метода из класса Mage_Core_Model_Config_Options:
1 |
Mage::getConfig()->getOptions()->getMediaDir(); |
Так же там (в Mage_Core_Model_Config_Options) есть метод getDir($type), где в $type передается тип, например ‘code’, и на выходе получем getCodeDir().
Детальней о назначениях директорий magento можно почитать, например, здесь.
* – от базовой папки magento