1

2 つのストア (およびそれぞれに 1 つのストア ビュー) を持つ単一の Web サイトを使用するように構成された Magento ストアがあります。

両方の店舗の商品は異なる必要があります。私がそれらを作成したとき、各ストアには独自のルート カテゴリがあったため、Magento が関連付けられたカテゴリによって製品を分割することを期待していました。どういうわけか、これは最初はローカルテストで機能しましたが、本番環境では機能せず、一部のカテゴリをローカルで変更した後は機能しませんでした-元に戻してもこの問題は修正されませんでした.

検索すると、ストアビューごとにステータスを変更できることがわかりましたが、商品ステータスの横に「ウェブサイト」と表示されており、変更すると両方のビューが変更されます。可視性を変更することはできますが、それによってストアの速度が低下しないかどうかはわかりません。だから、2つの質問:

  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

製品を編集すると、「Web サイト」というタブが表示されます。そこから、特定の Web サイトに製品を割り当てたり、特定の Web サイトから製品を削除したりできます。グリッドで製品を選択し、[属性の変更] アクションを選択して、Web サイトを一括変更することもできます。再び「Web サイト」タブが表示されます。
視認性に関しては問題ありません。where各店舗ビューのフラット カタログを有効にすると、新しいテーブルが作成され、可視性はselect ステートメントで使用される単純なフラグになります。

于 2013-07-17T13:30:09.543 に答える