为Magento生成数千种测试产品的脚本?

时间:2012-09-07 15:40:47

标签: php magento

正如标题所示,我想知道是否有办法通过PHP脚本生成数以千计的简单测试产品(针对本地开发商店)。我有一些自定义扩展,可以加载不同的产品集合,并且它们可以与标准样本数据一起使用,但我想在更“真实世界”的设置中测试它们。因此,我希望在商店中拥有大量产品(成千上万)。他们不需要图像,名称/ SKU等可能只是增量值。

提前感谢任何建议!

1 个答案:

答案 0 :(得分:2)

所以,这就是this blog post在Fontis上的礼貌:

<?php
$i = 1;
$numberofprods = 100;
$numberofprods = range($i,$numberofprods);
foreach($numberofprods as $product) {
++$i; $name = "Product Number ".$i;
$product = Mage::getModel('catalog/product');
$product->setSku($i);
$product->setName($name);
$product->setDescription("This widget will give you years of trouble-free widgeting.");
$product->setShortDescription("High-end widget.");
$product->setPrice(99.99);
$product->setTypeId('simple');
$product->setAttributeSetId(4); // need to look this up
$product->setCategoryIds("3,8"); // need to look these up
$product->setWeight(1.0);
$product->setTaxClassId(2); // taxable goods
$product->setVisibility(4); // catalog, search
$product->setStatus(1); // enabled
// assign product to the default website
$product->setWebsiteIds(array(Mage::app()->getStore(true)->getWebsite()->getId()));
$product->save(); 
}; ?>

最好分批执行此操作,因为它似乎是处理器繁重的任务,所以我将数量添加为范围 - 例如,您可以 $ i = 1; $ numberofprods = 1000; < / em>然后当它完成 $ i = 1001; $ numberofprods = 2000; 等等。

要运行它,我只需将其保存为 app / design / frontend / default / template / createproducts.phtml 中的模板文件,然后从 {{等CMS页面调用它block type =“core / template”template =“createproducts.phtml”}} 。然后,每次加载该页面时,它都会运行并创建您的产品。