2016-10-31 27 views
5

Birden çok mağazaya el ile birkaç kategori adı eklemek istiyorum. Ben Bu işleriGet Magento Kategori URL & Adı

<?php $category = Mage::getModel('catalog/category')->load(20); ?> 
<a href="<?php echo $category->getUrl(); ?>"><?php echo $category->getName();?></a> 

bu (örnek olarak Kategorisi ID20) denedim ama bunun iyi bir fikir olup olmadığından emin değilim, sadece URL almak yüklemenin bir çok şey var.

<a href="<?php echo $this->__('URL-Language1') ?>"><?php echo $this->__('CatName-Language1') ?></a> 

Yerel csv çeviri ile:

Ben de onun yerine çevirisini kullanarak çalıştı.

Bu da işe yarıyor, ancak bunu başarmanın "doğru yolu" nedir? Bu bir geçici çözüm gibi geliyor. Sadece url anahtar tam kategori URL değil url anahtar özellik için de ($categoryId, 'url_key', $storeId) (bu durumda) herhangi bir kategori özelliğini alamadığında

Mage::getResourceModel('catalog/category')->getAttributeRawValue($categoryId, 'name', $storeId); 

için ancak var:

+0

Hayır, bunu yapmanın doğru yolu değil. Yerel çeviri dil çevirileri içindir. Unutmayın ki, tüm kategorinin sadece adını ve URL'sini geri almak için yüklenmesinin verimsiz olduğunu, ancak kullandığınız bloğun önbelleğe alınacağını, dolayısıyla her işi yapmayacağınızı akılda tutmalısınız. sayfayı yüklediğiniz zaman. –

+0

Ah teşekkürler, belki önbellek ile ilgili bir sorunum var, farklı yerlerde 16 kategori var ve çeviri "hack" ile denediğinde fark edilir bir yükleme farkı fark ettim, daha fazla araştırmak zorunda kalacaklar. –

+0

Diğer bir seçenek, doğrudan ve özel olarak istediğiniz verileri alan bir kaynak modeli yazmaktır. –

cevap

0

Bu deneyebilirsiniz.

İlgili konular