Kurz gesagt: Das Abrufen einer Produkt-URL mit zusätzlichen Parametern funktioniert in CE 1.8 und EE 1.13 nicht.
URLs wurden mit der neuesten Version von Magento geändert. Früher in CE 1.7 und EE 1.12 $this->getAddToCartUrl($_product)
durchlief das Aufrufen von einer Produktliste die folgenden Phasen:
Mage_Catalog_Block_Product_Abstract::getAddToCartUrl()
- Hier würde es den Abfrageparameter "options" mit dem Wert "cart" hinzufügen
Mage_Catalog_Block_Product_Abstract::getProductUrl()
- Diese Methode erhält im Wesentlichen einen Wert aus dem URL-Modell
Mage_Catalog_Model_Product_Url::getUrl()
- Bis zur endgültigen Generierung der URL mit den ursprünglich übergebenen Abfrageparametern wird viel verarbeitet
Mit CE 1.8 und EE 1.13 Mage_Catalog_Model_Product_Url::getUrl()
beginnt Schritt 3 folgendermaßen :
$url = $product->getData('url');
if (!empty($url)) {
return $url;
}
Da die Produkte in der Liste bereits über URL-Daten verfügen, werden die Abfrageparameter nicht hinzugefügt und die endgültige URL enthält keine ?options=cart
.
Meine Frage: Ist das ein Bug oder ein Feature?
url
ee-1.13
url-rewrite
ce-1.8.0.0
jharrison.au
quelle
quelle
Mage_Catalog_Block_Product_Abstract::getAddToCartUrl()
über den Core / Session-Singleton erledigen . Können Sie mir ein Beispiel für den verwendeten Code geben?Antworten:
Wow, ziemlich das Delta für diese Klasse von 1.7.0.2 -> 1.8.0.0! Während es in dieser Klasse wesentliche Änderungen gibt und dies "Abbruchverhalten" ist, sollte dies als Fehler angesehen und der EE-Unterstützung vorgelegt werden.
Es gibt nichts Außergewöhnliches oder Aufregendes an dieser zuvor gültigen Funktionalität, und selbst in einer kleineren Version sollten keine Änderungen am Update vorhanden sein (daher Magento 2).
quelle