2013-04-28 8 views
5

Magento(1.7)を使用しています。私は古いストア(store1)をstore2でマルチストアで拡張しました。私はたくさんの製品を持っています(約1500)、それらはすべてStore1では表示されますが、新しいストア(store2)では表示されません。アレルストアですべての製品を有効にする簡単な方法はありますか?すべてのショップですべての商品を有効にする方法

答えて

8

管理者の商品グリッドでは、[すべて選択]ボタンを使用してすべての商品を選択します。 「アクション」ドロップダウンメニューから、 [属性の更新]を選択します。 [ウェブサイト]タブで目的のウェブサイトを選択して[保存]をクリックします。 次に、すべてのデータを再インデックスする:

[システム]> [インデックス管理]の順にクリックします。
すべてのアイテムを選択し、フォームを送信して再インデックスを開始します。

+0

私の問題は正反対で、間違った製品によって両方のウェブサイトが割り当てられました。あなたの上記のように私のウェブサイトは25kの製品で構成されています。変更属性を使用することは不可能ですが、私のウェブサイトが立ち往生しようとしていますが、DBやその他の方法で可能です。 – Rathinam

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配列をプログラムで指定します:

関連する問題