Seorang klien memiliki 20000+ produk dengan 7 situs web. Mereka dulunya memiliki 4 situs web dan sebagian besar produk dikaitkan dengan 4 situs web. Apa cara terbaik & tercepat untuk beralih melalui produk dan memperbarui produk untuk memasukkan situs web baru.
Saya memiliki kode berikut namun terlalu lambat:
$ productCollection = Mage :: getModel ('catalog / product') -> getCollection () -> addFieldToFilter ('sku', array ('like' => '02% ')); foreach ($ productCollection sebagai $ product) { echo $ product-> getSku (); $ product-> setWebsiteIds (array (1,2,3,4,5,6,7)); coba { $ product-> save (); gema "- disimpan."; } catch (Exception $ e) { echo '-'. $ e-> getMessage (); } gema "\ n"; }
Saya berpikir untuk menggunakan metode iterator walk namun saya mengerti bahwa toko / situs web bukanlah atribut sehingga tidak dapat dengan mudah diperbarui sendiri.
Jika Anda hanya ingin menambahkan produk yang ditugaskan untuk semua 4 situs web yang sudah ada sebelumnya, gunakan ini:
Lihat juga: Saring produk berdasarkan situs web menggunakan AND
Ini bisa berupa skrip pengaturan Magento atau skrip PHP yang dapat dibuang (dalam hal ini tambahkan
include 'app/Mage.php';
di bagian atas dan hapus dari server setelah penggunaan)sumber
Langkah 1: Dapatkan semua Id situs web / buat array dari Id situs web
Langkah 2: Dapatkan semua Id produk
Langkah 3: Tambahkan id situs web ke semua produk
Catatan: Jika Anda ingin menghapus situs web dari produk. gunakan hapus alih-alih tambahkan kata
sumber
Solusi lain jika kemalasan Anda tidak ingin membuat file PHP apa pun:
Bekerja untukku.
sumber