Kısaca: Ek parametrelerle bir ürün URL'sini almak CE 1.8 ve EE 1.13'te çalışmaz.
URL'ler Magento'nun en son sürümüyle değişti. Daha önce CE 1.7 ve EE 1.12'de $this->getAddToCartUrl($_product)
bir ürün listesinden arama yapmak aşağıdaki aşamalardan geçiyordu:
Mage_Catalog_Block_Product_Abstract::getAddToCartUrl()
- Burada "cart" değerine sahip "seçenekler" sorgusu eklenir.
Mage_Catalog_Block_Product_Abstract::getProductUrl()
- Bu yöntem temel olarak URL modelinden bir değer alır
Mage_Catalog_Model_Product_Url::getUrl()
- URL nihayet oluşturulana kadar, başlangıçta iletilen sorgu parametreleriyle birlikte bir çok işlem gerçekleşir
Şimdi, CE 1.8 ve EE 1.13 ile 3. adım şöyle Mage_Catalog_Model_Product_Url::getUrl()
başlar:
$url = $product->getData('url');
if (!empty($url)) {
return $url;
}
Listedeki ürünler zaten URL verilerine sahip olduğundan, sorgu parametreleri eklenmez ve nihai URL içermez ?options=cart
.
Benim sorum: Bu bir hata mı yoksa bir özellik mi?
Mage_Catalog_Block_Product_Abstract::getAddToCartUrl()
çekirdek / oturum singletonu aracılığıyla otomatik olarak yapacak . Kullandığınız kodun bir örneğini verebilir misiniz?