Bagaimana cara menerapkan pengaturan tampilan kategori ke semua kategori?


10

Saya memiliki banyak kategori dan alih-alih menerapkan pengaturan baru ke semua kategori satu per satu, saya ingin tahu apakah ini mungkin untuk menerapkan pengaturan baru ke semua kategori sekaligus?

Terima kasih!

Jawaban:


13

Tidak ada cara untuk melakukan ini dari UI.
Cara saya biasanya melakukannya, adalah memperbarui nilai-nilai dalam database. Ini bukan pendekatan yang direkomendasikan tetapi berhasil.
Katakanlah Anda ingin memperbarui is_anchoratribut ke '1' untuk semua kategori.

SELECT * FROM eav_attribute where attribute_code = 'is_anchor'

Kueri di atas akan memberi Anda is_anchoratribut. Saya mencatat bahwa hasil saya melihat bahwa id atribut adalah 51 (bisa berbeda untuk Anda). dan backend_typeitu int. Ini berarti bahwa nilai untuk atribut ada di dalam tabel catalog_category_entity_int.

UPDATE `catalog_category_entity_int` set value = 1 where attribute_id = 51 and parent_id <> 0;

Kueri ini akan menetapkan nilai 1 untuk atribut is_anchor (id 51), untuk semua kategori kecuali 'root of all root', kategori dengan parent = 0.
Setelah saya menjalankan kueri, saya mengindeks ulang kategori datar dan hanya itu.


sempurna! persis apa yang saya cari: D
Aamir Siddique

7
Permintaan SQL yang diperbarui untuk versi Magento yang lebih baru (misalnya, saya tidak memiliki kolom parent_id). UPDATE catalog_category_entity_intnilai set = 1 di mana attribute_id = (SELECT attribute_id FROM eav_attributemana attribute_code = 'is_anchor');
Jasuten

@Marius tidak berfungsi dalam kasus saya, saya mencoba UPDATE catalog_category_intnilai set = 1 di mana atribut_id = 51 dan parent_id <> 0; tetapi kesalahan: # 1146 - Tabel 'magento1.catalog_category_int' tidak ada
Dinesh

1
@Dinesh Ini berarti ada yang salah dengan instance magento Anda.
Marius

@Marius bagaimana menemukan & memperbaikinya, bantuan apa pun
Dinesh

2

Saya tidak yakin pengaturan mana yang Anda ubah dalam kategori Anda, tetapi jika itu ada pada daftar opsi pada halaman ini , maka menggunakan Magento REST API mungkin merupakan pilihan terbaik Anda.


1

Pertama-tama identifikasikan id atribut dari atribut is_anchor:

SELECT * FROM eav_attribute where attribute_code = 'is_anchor';

kami mendapatkan atribut id 51 di database saya. Sekarang jalankan query berikut

UPDATE catalog_category_entity_int set value = 1 where attribute_id = 51;

ganti 51 dengan id atribut Anda sendiri. Dan baru saja membangun kembali indeks ini

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.