Magento: Rewrite-Block funktioniert nicht
Ich versuche zu umschreiben, dass eine core-Datei von magento.
Irgendwie ist es nicht überschreiben Sie den code. Ich versuche zu überschreiben, die function getProduct().
Tipfix/Block/Product/View.php
<?php
class WP_Tipfix_Block_Catalog_Product_View extends Mage_Catalog_Block_Product_View
{
public function getProduct()
{
if (!Mage::registry('product') && $this->getProductId()) {
$product = Mage::getModel('catalog/product')->load($this->getProductId());
Mage::register('product', $product);
}
//return Mage::registry('product');
}
}
Tipfix/etc/config.xml
<blocks>
<WP_Tipfix>
<class>WP_Tipfix_Block</class>
</WP_Tipfix>
<catalog>
<rewrite>
<product_view>WP_Tipfix_Block_Catalog_Product_View</product_view>
</rewrite>
</catalog>
</blocks>
Ich habe wissen Ahnung, was ich falsch mache.
Gr.
Lex
FYI der classgroup
<WP_Tipfix>
ist unnötig, es sei denn, Sie erstellen block-Klassen.InformationsquelleAutor Lexperts | 2012-03-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ihre Klasse
WP_Tipfix_Block_Catalog_Product_View
was bedeutet, es muss in den OrdnerWP/Tipfix/Block/Catalog/Product/View.php
. Sie müssen entweder bewegen Sie Ihre Produkt-Verzeichnis in ein neues Verzeichnis namens Catalog in diesem Ort oder benennen Sie Ihre Klasse an (der Klasse, und in der XML-Datei) zuWP_Tipfix_Block_Product_View
. Ich empfehle das verschieben der Datei.Sie haben auch den cache zu löschen, wenn dies nicht funktioniert!
InformationsquelleAutor Max
Ändern Sie bitte die
config.xml
Inhalt des Moduls, und ich bin mir sicher, dass es funktionieren sollte:-Hoffe, es hilft.
UPDATE:-
Nach Ben's Kommentar, ich glaube, ich sollte erwähnt haben, dass die OP müssen Sie auch die Lösung wie erwähnt von Max in seinem Antwort. Also die OP müssen eine gemeinsame Anstrengung zu lösen sein problem.
Prost und herzlich willkommen!
Diese Lösung konnte nicht haben das problem behoben, basierend auf der OP ' s original-code.
Bitte schauen Sie genau in die
config.xml
Inhalt der Datei, zu finden, dass es keine Erwähnung von jederconfig
Knoten so gut wie keine Erwähnungmodules
Knoten. Also sofern ich diese Lösung, und in der Tat, der OP hat sich selbst kommentiert, dass es gelöst ist sein problem. So können Sie mir bitte sagen, was ich falsch gemacht habe?Wie Sie bereits vermuten, Ihre Bearbeitung, die umgeschrieben classname würde aufgelöst werden, indem Sie den autoloader an
WP/Tipfix/Block/Catalog/Product/View.php
- so Max die Antwort ist die richtige Lösung, vorausgesetzt, die OP war snipping der config für die Kürze. Auch, Versionsnummer und classgroup sind völlig überflüssig für schreibt.InformationsquelleAutor Knowledge Craving