あなたは以下のように行うことができます。そして、その製品の位置を
$category = Mage::getModel('catalog/category')
->setStoreId(Mage_Core_Model_App::ADMIN_STORE_ID)
->load($categoryId);
:
まずカテゴリを取得
:
$products = $category->getProductsPosition();
これは、このように組織配列となります
product_id_1 => position_1
product_id_1 => position_2
foreach($products as $productId => $position){
$products[$productId] = '' . rand(0,9999);
}
そして最後に保存します。:だから(ここでは0と9999の間)のランダムな位置を設定し、これらの製品のいずれかをforeachのここ
$category->setPostedProducts($products);
$category->save();
は、あなたが/シェルの中に入れることができますスクリプトを下回っていますマゼンタディレクトリ:
<?php
require_once './abstract.php';
class RandomCategoryOrder extends Mage_Shell_Abstract {
private $_categoryId = 188;
public function run(){
$category = Mage::getModel('catalog/category')
->setStoreId(Mage_Core_Model_App::ADMIN_STORE_ID)
->load($this->_categoryId);
$products = $category->getProductsPosition();
foreach($products as $productId => $position){
$products[$productId] = '' . rand(0,9999);
}
$category->setPostedProducts($products);
try{
$category->save();
}catch(Exception $e){
echo $e->getMessage();
}
}
}
$randowCategoryOrder = new RandomCategoryOrder();
$randowCategoryOrder->run();
この素晴らしい答えをありがとう!!! –