संक्षेप में: अतिरिक्त पैरामेट्स के साथ एक उत्पाद URL प्राप्त करना सीई 1.8 और ईई 1.13 में काम नहीं करता है।
Magento के नवीनतम संस्करण के साथ URL बदल गए हैं। पहले CE 1.7 और EE 1.12 में $this->getAddToCartUrl($_product)
उत्पाद सूची से कॉल करना निम्नलिखित चरणों में चलेगा:
Mage_Catalog_Block_Product_Abstract::getAddToCartUrl()
- यहाँ यह मूल्य "कार्ट" के साथ क्वेरी "विकल्प" जोड़ देगा
Mage_Catalog_Block_Product_Abstract::getProductUrl()
- यह विधि अनिवार्य रूप से URL मॉडल से एक मान प्राप्त करती है
Mage_Catalog_Model_Product_Url::getUrl()
- URL के अंत में जनरेट होने तक बहुत सारी प्रोसेसिंग होती है, मूल रूप से पास किए गए क्वेरी मापदंडों के साथ पूरी होती है
अब सीई 1.8 और ईई 1.13 के साथ, चरण 3 Mage_Catalog_Model_Product_Url::getUrl()
इस तरह से शुरू होता है:
$url = $product->getData('url');
if (!empty($url)) {
return $url;
}
क्योंकि सूची के उत्पादों में पहले से ही URL डेटा है, क्वेरी पैरामीटर नहीं जोड़े गए हैं और अंतिम URL में नहीं है ?options=cart
।
मेरा प्रश्न: यह एक बग या एक विशेषता है?
Mage_Catalog_Block_Product_Abstract::getAddToCartUrl()
माध्यम से Magento कोर / सत्र सिंगलटन के माध्यम से स्वचालित रूप से ऐसा करेगा । क्या आप मुझे उस कोड का उदाहरण दे सकते हैं जिसका आपने उपयोग किया है?