Оновлення: я виявив, що клас, який я насправді потрібно переписати, є таким, який SMDesign_SMDZoom_Block_Product_View_Media
не SMDesign_ColorswatchProductView_Block_Product_View_Media
такий, як я вважав спочатку. Однак точно таке ж питання все ще стосується.
Розширення SMDesign SMDZoom переписує блок-клас "каталог / product_view_media". Xml для цього виглядає приблизно так:
<global>
...
<blocks>
<smdzoom>
<class>SMDesign_SMDZoom_Block</class>
</smdzoom>
</blocks>
<blocks>
<catalog>
<rewrite>
<product_view_media>SMDesign_SMDZoom_Block_Product_View_Media</product_view_media>
</rewrite>
</catalog>
</blocks>
....
</global>
Я хочу ще раз переписати цей клас. Я хочу переписати каталог / product_view_media клас, який цей модуль smdzoom переписує. Це можна зробити? Як виглядатиме конфігураційний xml у моєму модулі для цього?
На даний момент це мій модуль init xml-файл:
<config>
<modules>
<Goorin_SMDZoom>
<active>true</active>
<codePool>local</codePool>
</Goorin_SMDZoom>
<depends>
<Mage_Catalog />
<SMDesign_SMDZoom />
</depends>
</modules>
</config>
і файл config.xml модуля:
<global>
<blocks>
<gbismdzoom>
<class>Goorin_SMDZoom_Block</class>
</gbismdzoom>
<catalog>
<rewrite>
<product_view_media>Goorin_SMDZoom_Block_Product_View_Media</product_view_media>
</rewrite>
</catalog>
</blocks>
</global>
Мій новий клас просто виглядає так для тестування:
class Goorin_SMDZoom_Block_Product_View_Media extends SMDesign_SMDZoom_Block_Product_View_Media
{
public function _construct() {
parent::_construct();
}
}
Я тестую це, показуючи підказки шляху до шаблону, і на сторінці перегляду продукту все ще використовується блок SMDesign. Що я роблю неправильно?