Próbuję pokazać popularną listę produktów za pomocą ajax w magento na stronie głównej za pomocą ajax, mogę to zrobić dla 5 lub "N" noof produktów, ale co chcę to pasek narzędzi paginacji do dodane z zestawem wyników.Niestandardowe bloki Magento
To właśnie dodany pokazać popularnych produktów,
// Magento layout
$magento_block = Mage::getSingleton('core/layout');
$productsHtml = $magento_block->createBlock('catalog/product');
$productsHtml->setTemplate('catalog/product/popular.phtml');
echo $productsHtml ->toHTML();
A pod popular.phtml
<?php
$_productCollection = Mage::getModel('catalog/product')->getCollection()
->addPriceData()
->addAttributeToSort('ordered_qty', 'DESC')
->addAttributeToSort('name', 'ASC')
->setPageSize($limit)
->setPage($p, $limit)
->addAttributeToSelect(array('entity_id', 'entity_type_id', 'attribute_set_id', 'type_id', 'sku', 'category_ids', 'created_at', 'updated_at','has_options', 'sync', 'name', 'stock_status', 'wc_review_iwc_rating', 'wc_review_wa_rating', 'wc_review_bh_rating', 'small_image', 'status', 'pre_arrival', 'description', 'short_description', 'price', 'is_salable', 'stock_item', 'gift_message_available', 'featured'));
?>
Więc to daje mi popularne produkty podanej strony i granicy, ale może nie ładuj paska narzędziowego do stronicowania (bezpośrednio dodając pasek narzędzi do popular.phtml lub przez funkcję tworzenia układu bloku), Gdzie się mylę? Czy ktoś może mi powiedzieć, proszę.
Dzięki
Ten działa, z normalnym wyświetlaniem produktu. Ale chcę wyświetlić go z niestandardowego pliku php. Nawet próbowałem załadować toolbar.phtml w ten sposób. $ layout = Mage :: getSingleton ('core/layout'); $ toolbar = $ layout-> createBlock ("katalog/product_list_toolbar"); // Renderuj pasek narzędzi html echo $ toolbar-> toHtml(); To nie działa w wersji 1.4.1, ale działało w wersji 1.3.Muszę użyć paska narzędziowego paginacji. Ale to nie działa. – Elamurugan
hi vinai, zrobiłem twoją sugestię, ale niestety to nie działa. Główny myśl, pracuję nad EE 1.9, I ZROBIŁEM TO. \t $ collection = Mage :: getModel ("katalog/produkt") -> loadByAttribute ('sku', $ sku); \t $ listBlock = Mage :: getSingleton ("core/layout") -> createBlock ("katalog/lista_produktów"); \t $ listBlock-> setCollection ($ collection) -> setTemplate ("katalog/produkt/lista/lista.phtml"); \t var_dump ($ listBlock-> getCollection()); (ZWRACA NULL) \t // echo $ listBlock -> toHTML(); (POPRZEZ BŁĄD BŁĘDU). – Elamurugan
Mage :: getModel ("katalog/produkt") -> loadByAttribute() nie zwraca kolekcji, ale Mage_Catalog_Model_Product. Edytowałem powyższy wpis i dodałem działanie kontrolera, aby było bardziej zrozumiałe. – Vinai