Ive заметило, что моя домашняя страница занимает много времени, чтобы загрузить - более 6 секунд infact в соответствии с сайтом24x7.com, поэтому ive переключил элементы, чтобы попытаться определить причину, и она не работает к 2 файлам сбора продуктов, которые я сделал, чтобы показать новые продукты и самые продаваемые продукты.Magento как кешировать productCollection
Как только я удаляю их с домашней страницы, страница загружается менее чем за 0,5 секунды.
Итак, может ли кто-нибудь помочь с оптимизацией и кэшированием productCollection? У меня есть APC, установленный и запущенный на сервере, но я не уверен, что он кэширует файлы, расположенные в приложении/дизайне/интерфейсе/по умолчанию/MY_THEME/catalog/product/newproducts.phtml
Итак, мой коллекционный звонок для самых продаваемых (наиболее просматриваемый на самом деле) выглядит следующим образом;
<?php $storeId = Mage::app()->getStore()->getId(); // return current store id ?>
<?php $_productCollection= Mage::getResourceModel('reports/product_collection')
->addAttributeToSelect('*')
->addStoreFilter($storeId)
->addViewsCount()
->addFieldToFilter('visibility', Mage_Catalog_Model_Product_Visibility::VISIBILITY_BOTH)
->addFieldToFilter('status',Mage_Catalog_Model_Product_Status::STATUS_ENABLED);
$_productCollection->getSelect()->limit(8)
?>
Как это можно оптимизировать?
спасибо, именно такой разведданных я был после! –
@ R.S Почему вы используете 'urlencode' дважды? Это необходимо или это ошибка здесь? Это не должно быть: '$ data = urlencode (serialize ($ array)); $ cache-> save ($ data, $ key, array ("homepage_cache"), 60 * 60 * 24); '? – zitix
Это была опечатка .. исправлено сейчас –