Вот скрипт, вызываемый через ajax:
<?php
require_once '../app/Mage.php';
umask(0);
/* not Mage::run(); */
Mage::app('default');
$cat_id = ($_POST['cat_id']) ? $_POST['cat_id'] : NULL;
try {
$category = new Mage_Catalog_Model_Category();
$category->load($cat_id);
$collection = $category->getProductCollection();
$output = '<ul>';
foreach ($collection as $product) {
$cProduct = Mage::getModel('catalog/product');
$cProduct->load($product->getId());
$output .= '<li><img id="'.$product->getId().'" src="' . (string)Mage::helper('catalog/image')->init($cProduct, 'small_image')->resize(75) . '" class="thumb" /></li>';
}
$output .= '</ul>';
echo $output;
} catch (Exception $e) {
echo 'Caught exception: ', $e->getMessage(), "\n";
}
Я просто передаю идентификатор категории, который я прикрепил к навигационным ссылкам, затем выполняю некоторую работу, чтобы в конечном итоге просто вернуть все изображения продуктов в этой категории.
Я использую это в приложении типа «перетащи и брось», и количество возвращаемых изображений иногда составляет 500 с. Так что это довольно сильно задерживается во время передачи, иногда около 10 секунд.
Я знаю, я бы хорошо кешировал их, но не знал, как это сделать. Любая помощь очень ценится.
Спасибо.
-Wes