Мне нужно программно обновить макет страницы тысяч категорий в каталоге Magento + randomize. Вот кусок кода:Изменение макета категории Magento
/* @var $_childColorCategory Mage_Catalog_Model_Category */
$_childColorCategory = Mage::getModel('catalog/category')->load($_childColorId);
/* positions rand */
$_positions = $_childColorCategory->getProductsPosition();
if (count($_positions) > 1) {
$_order = range(1, count($_positions));
shuffle(&$_order);
$_newPositions = array_combine(array_keys($_positions), $_order);
$_childColorCategory->setPostedProducts($_newPositions);
}
$_childColorCategory
->setPageLayout('two_columns_right')
->save();
, конечно, это все в цикле и т.д.
Вопрос заключается в том, что макет не обновляется (порядок вложенных продуктов изменился штраф): Я вижу в приборной панели, что все («two_columns_right»), но на самом деле он не работает над интерфейсом до нажатия кнопки «Сохранить» в администраторе. Если я нажимаю кнопку (без внесения каких-либо изменений), то макет становится фактически правильным на интерфейсе, и более того - любые дальнейшие изменения в программном макете в эту категорию хорошо работают. Есть идеи? Thanks
P.S. Это не проблема с кешем 100%. Magento обновлен до версии 1.7 - не повезло. Многострочная установка (4 веб-сайта).
Почему он должен быть медленным? Конечно, я знаю, как макеты работают в magento, но мне не нужны все категории, которые нужно изменить – c0rewell