2016-10-31 14 views
5

प्राप्त करें मैं अपने मल्टीस्टोर में मैन्युअल रूप से नामों के साथ कुछ श्रेणी लिंक जोड़ना चाहता हूं। मैं इस (उदाहरण के रूप में श्रेणी ID20) की कोशिश की हैMagento श्रेणी यूआरएल और नाम

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

यह काम करता है, लेकिन मुझे यकीन है कि अगर यह एक अच्छा विचार है नहीं कर रहा हूँ, वहाँ लोड हो रहा है की एक बहुत कुछ बस URL प्राप्त करने के लिए है।

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

लोकेल csv में अनुवाद के साथ:

मैं भी बजाय अनुवाद उपयोग करने की कोशिश।

यह भी काम करता है, लेकिन इसे प्राप्त करने के लिए "सही तरीका" क्या है? यह एक कामकाज की तरह लगता है।

+0

नहीं, यह करने का सही तरीका नहीं है। स्थानीयकरण भाषा अनुवाद के लिए हैं। आपको यह ध्यान में रखना चाहिए कि जब मैं आपके बयान से सहमत हूं कि पूरे श्रेणी की लोडिंग सिर्फ अपना नाम और यूआरएल पुनः प्राप्त करने के लिए अक्षम है, तो जिस ब्लॉक में आप इसका इस्तेमाल करते हैं, वह संभवतः कैश किया जाएगा, इसलिए आप हर काम नहीं करेंगे जब आप पेज लोड करते हैं। –

+0

आह धन्यवाद, शायद मेरे कैश के साथ कुछ समस्या है, मुझे विभिन्न स्थानों पर 16 श्रेणियां मिलीं और जब अनुवाद "हैक" के साथ प्रयास किया गया तो मुझे ध्यान देने योग्य लोडिंग अंतर मिला, आगे की जांच करनी होगी। –

+0

एक और विकल्प एक संसाधन मॉडल लिखना है जो आपके द्वारा सीधे और विशेष रूप से इच्छित डेटा को पुनर्प्राप्त करता है –

उत्तर

0

आप इस कोशिश कर सकते हैं:

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

के लिए यूआरएल प्रमुख विशेषता के लिए किसी भी वर्ग विशेषता (इस मामले में) को पुनः प्राप्त भी ($categoryId, 'url_key', $storeId) लेकिन यह बस यूआरएल कुंजी पूर्ण श्रेणी url नहीं है।

संबंधित मुद्दे