2016-01-04 4 views
2

Попытки overide блока под названием info.php имя классаMagento overide третья сторона блок

Epicor_Customerconnect_Block_Customer_Orders_Details_Info 

Создан новый модуль, созданный XML для т.д./модулей.

<?xml version="1.0" encoding="UTF-8"?> 
<config> 
    <modules> 
     <DotNetIT_OrderInfo> 
      <active>true</active> 
      <codePool>local</codePool>   
     </DotNetIT_OrderInfo> 
    </modules> 
</config> 

создал config.xml

<?xml version="1.0"?> 
<config> 
<modules> 
    <DotNetIT_OrderInfo> 
     <version>0.0.1</version> 
    </DotNetIT_OrderInfo> 
</modules> 
<global> 
    <models> 
     <OrderInfo> 
      <class> 
       DotNetIT_OrderInfo_Model 
      </class> 
     </OrderInfo> 
    </models>  
    <blocks> 
     <customerconnect> 
      <rewrite> 
        <info>DotNetIT_OrderInfo_Block_Customer_Orders_Details_Info</info> 
      </rewrite> 
     </customerconnect> 
     <OrderInfo> 
      <class>DotNetIT_OrderInfo_Block</class> 
     </OrderInfo> 
    </blocks> 
    <helpers> 
     <DotNetIT_OrderInfo> 
      <class>DotNetIT_OrderInfo_Helper</class> 
     </DotNetIT_OrderInfo>   
    </helpers> 
</global> 

</config> 

создал новый блок с той же папке structure.Also расширяет оригинал.

class DotNetIT_OrderInfo_Block_Customer_Orders_Details_Info extends Epicor_Customerconnect_Block_Customer_Orders_Details_Info { 

В новых блоках contruct я создаю var_dump, чтобы увидеть, использует ли он новый блок. но ничего не происходит, потому что его не используют.

Что еще мне нужно сделать здесь? я все покрыл? или моя конфигурация переписывается неправильно?

EDIT: также класс им расширение уже расширяет другой,

class Epicor_Customerconnect_Block_Customer_Orders_Details_Info extends Epicor_Customerconnect_Block_Customer_Info 

Epicor_Customerconnect_Block_Customer_Info extends Mage_Core_Block_Template 

ответ

1

Это может работать для вас.

приложение \ и т.д. \ модули \ DotNetIT_OrderInfo.xml

<?xml version="1.0"?> 
<config> 
    <modules> 
    <DotNetIT_OrderInfo> 
     <active>true</active> 
     <codePool>local</codePool> 
     <version>0.1.0</version> 
    </DotNetIT_OrderInfo> 
    </modules> 
</config> 

приложение \ код \ Local \ DotNetIT \ OrderInfo \ и т.д. \ config.xml

<?xml version="1.0"?> 
<config> 
    <modules> 
    <DotNetIT_OrderInfo> 
     <version>0.1.0</version> 
    </DotNetIT_OrderInfo> 
    </modules> 
    <global> 
    <helpers> 
     <orderinfo> 
     <class>DotNetIT_OrderInfo_Helper</class> 
     </orderinfo> 
    </helpers> 
    <blocks> 
     <orderinfo> 
     <class>DotNetIT_OrderInfo_Block</class> 
     </orderinfo> 
      <customerconnect> 
       <rewrite> 
        <customer_orders_details_info>DotNetIT_OrderInfo_Block_Customerconnect_Customer_Orders_Details_Info</customer_orders_details_info> 
       </rewrite> 
      </customerconnect> 
    </blocks> 
    </global> 
</config> 

приложение \ код \ Local \ DotNetIT \ OrderInfo \ Block \ Customerconnect \ Customer \ Orders \ Details \ Info.php

<?php 
class DotNetIT_OrderInfo_Block_Customerconnect_Customer_Orders_Details_Info extends Epicor_Customerconnect_Block_Customer_Orders_Details_Info 
{ 
} 
+0

Что работает? зачем мне этот полный путь? Я думал, тебе не нужно? – SteveSmithSkId

+0

прочитайте это http://alanstorm.com/magento_dispatch_rewrites_intro – urfusion

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