To pytanie dotyczy dobrych praktyk programistycznych w Magento.
Muszę pokazać (w liście produktów kategorii) produkt wraz z powiązanymi produktami w miniaturach. Więc edytowałem mypackage/mytheme/template/catalog/product/list.phtml
coś takiego
<?php
$related=$_product->getRelatedProductIds();
if(count($related)>0){
echo '<div class="a'.$ap.'"></div>';
echo '<div class="li_p"><ul>';
foreach($related as $rela){
$rela_nom=Mage::getModel('catalog/product')->load($rela);
echo '<li><a href="'.$rela_nom->getProductUrl().'"> <img src="'.$this->helper('catalog/image')->init($rela_nom, 'small_image')->resize(20).'" width="20" height="20"> </a><li>';
}
echo '</ul></div>';
}
?>
I działa bardzo dobrze.
Ale moje pytanie brzmi: czy poprawne jest tworzenie instancji klasy modelu w plikach phtml?
Jeśli nie, jaki byłby najlepszy sposób na osiągnięcie tej funkcjonalności? Mam na myśli, który plik lepiej edytować lub jaką klasę lepiej dodać, gdzie? Pomocnik?
Czy możesz podać mały przykład lub rzucić okiem, które pliki lepiej edytować.