Chciałbym dodać kilka linków do kategorii z nazwami ręcznie w moim multistore. Próbowałem to (kategoria ID20 jako przykład)Uzyskaj adres URL i nazwę kategorii Magento
<?php $category = Mage::getModel('catalog/category')->load(20); ?>
<a href="<?php echo $category->getUrl(); ?>"><?php echo $category->getName();?></a>
To działa, ale nie jestem pewien, czy to dobry pomysł, jest tam wiele załadunku tak aby uzyskać adres URL.
Próbowałem też stosując zamiast tłumaczenie:
<a href="<?php echo $this->__('URL-Language1') ?>"><?php echo $this->__('CatName-Language1') ?></a>
z tłumaczeniem w csv Locale.
To również działa, ale jaki jest "właściwy sposób", aby to osiągnąć? To wygląda jak obejście.
Nie, nie jest to właściwy sposób. Lokalizacje są przeznaczone do tłumaczeń językowych. Powinieneś pamiętać, że chociaż zgadzam się z twoim stwierdzeniem, że załadowanie całej kategorii tylko po to, by odzyskać jej nazwę i URL jest nieefektywne, blok, w którym go użyjesz, będzie prawdopodobnie buforowany, więc nie będziesz wykonywał pracy co czas ładowania strony. –
Ach dzięki, może jakiś problem z moją pamięcią podręczną, dostałem 16 kategorii w różnych miejscach i kiedy próbowałem z tłumaczeniem "hack" dostałem zauważalną różnicę ładunkową, będę musiał zbadać dalej. –
Inną opcją jest napisanie modelu zasobów, który pobiera żądane dane bezpośrednio i wyłącznie –