2016-03-03 6 views
-1

Я просто хочу знать, могу ли я создать блок продукта в локальном пуле кодов (то есть \ app \ code \ local \ Mage \ Catalog \ Block \ Product.php) без создания мой пользовательский модуль просто поместил этот единственный файл?Перезаписать файл блока ядра без настраиваемого модуля в Magento

Если это так, будет ли этот вызов блокировки локального кода или основной вызов? Если это будет местный, пожалуйста, дайте мне знать, почему.

ответ

0

Если вы скопируете файл кода/ядра в код/​​локальный репозиторий, основной файл будет перезаписан локальным файлом.

Это происходит из-за того, включают в себя путь для загрузки системных файлов, указанных в приложении/Mage.php:

$paths = array(); 
$paths[] = BP . DS . 'app' . DS . 'code' . DS . 'local'; 
$paths[] = BP . DS . 'app' . DS . 'code' . DS . 'community'; 
$paths[] = BP . DS . 'app' . DS . 'code' . DS . 'core'; 
$paths[] = BP . DS . 'lib'; 

Так что в вашем случае система будет искать product.php в следующем порядке:

  1. приложение/код/​​местные/Mage/Каталог/Block/product.php
  2. приложение/код/​​сообщества/Mage/Каталог/Block/product.php
  3. приложение/код/​​ядро ​​/ Mage/Каталог/Блок/product.php
  4. Библиотека/Mage/Каталог/Block/product.php

Если система не может найти какой-либо из этих файлов, он выдаст сообщение об ошибке.

+1

OK ........ спасибо за ответ и такие замечательные объяснения. –

Смежные вопросы