我正在使用Magento(1.7),我只是通过多店铺扩展了我的旧商店(store1)和store2。我有很多产品(大约1500个),它们都在Store1中可见,但在新商店(store2)中不可见。是否有一种简单的方法可以为alle商店启用所有产品?
答案 0 :(得分:9)
在管理员的产品网格中,选择所有带有“全选”按钮的产品。从'actions'下拉菜单中;选择“更新属性”。在“网站”标签中;选择所需的网站,然后单击“保存”。 接下来,重新索引所有数据:
转到:系统>指数管理。
选择所有项目并通过提交表格开始重新索引。
答案 1 :(得分:2)
有几种方法可以做到这一点。首先,也是最简单的方法是使用管理员中的批量编辑功能。转到您的管理产品页面,单击全选,将操作下拉列表更改为“更改属性”,然后单击“提交”。然后,在“网站”选项卡上,确保在“将产品添加到网站”区域中选中新网站,然后单击“保存”。
如果您需要以编程方式执行此操作并且拥有自己的网站ID,则可以在Magento根目录中的PHP脚本中添加类似的内容:
<?php
require_once('app/Mage.php');
umask(0);
Mage::app('admin');
$website_ids = array(1, 2); // I'm assuming your website IDs are 1 and 2.
// $website_ids = getWebsitesArray();
$product_collection = Mage::getModel('catalog/product')->getCollection();
foreach($product_collection as $product) {
$product->setWebsiteIds($website_ids);
$product->save();
}
只是为了好的衡量标准,以下是如何以编程方式获取该website_ids数组:
/* @return array */
function getWebsitesArray() {
$ret = array();
$website_collection = Mage::app()->getWebsites(true);
foreach($website_collection as $website) {
$ret = array_push($website->getId());
}
return $ret;
}