1

我有一个 Magento 商店,配置为使用带有两个商店的单个网站(每个商店都有一个商店视图)。

两家商店必须有不同的产品。当我创建它们时,每个商店都有自己的根类别,所以我希望 Magento 将产品按相关类别划分。不知何故,这最初在我的本地测试中起作用,但在生产中不起作用,并且在本地更改某些类别后它不起作用 - 即使将其更改回来也不能解决这个问题。

搜索我发现我可以更改每个商店视图的状态,但在产品状态一侧,它显示“网站”,当我更改它时,两个视图都会更改。我可以改变能见度,但我不确定这是否不会减慢商店的速度。所以,两个问题:

  1. 是否可以根据根类别将每个商店的产品分开?
  2. 是否优化了每个商店视图的可见性?(我目前大约有500种产品,一个商店有400个,另一个商店有100个,我不想让商店慢下来)

编辑: 找不到解决方案,改用解决方法:

我的 CMS 主页上有这个:

{{block type="catalog/product_list_random" name="home_products" template="catalog/product/list.phtml"}}

这是展示其他商店的产品。因此,我扩展了 Mage_Catalog_Block_Product_List 类以包含一个按当前商店根类别 ID 的过滤器:

$_rootcatID = Mage::app()->getStore()->getRootCategoryId();
$collection
    ->joinField('category_id', 'catalog/category_product', 'category_id', 'product_id = entity_id', null, 'left')
    ->addAttributeToFilter('category_id', array('in' => $_rootcatID));

其他商店的产品仍会在搜索中显示,但这对我来说没问题。

4

1 回答 1

0

编辑产品时,您应该会看到一个名为“网站”的选项卡。从那里,您可以向特定网站分配或删除产品。您甚至可以通过在网格中选择产品并选择操作更改属性来批量更改网站。您应该再次看到一个“网站”选项卡。
至于能见度,没有问题。如果您为每个商店视图启用平面目录,则将创建一个新表,并且可见性将只是where选择语句中使用的一个简单标志。

于 2013-07-17T13:30:09.543 回答