W jakiś sposób w niektórych moich produktach usunięto zaznaczenie opcji „Użyj wartości domyślnej”.
Mój sklep ma 2 języki, angielski i francuski. Francuski używa wartości Domyślnego sklepu, więc teraz, gdy aktualizuję produkty, nie pojawia się on w interfejsie użytkownika, chyba że ręcznie przejdę do produktu w widoku francuskiego sklepu i wybiorę „Użyj wartości domyślnej”,
Wydaje się, że nie ma atrybutu dla akcji masowej, natknąłem się na niektóre skrypty i zapytania MySQL, jednak nie jest jasne, czy te rozwiązania resetują wszystkie widoki sklepu, aby użyć wartości domyślnej.
Pożądanym rezultatem jest ustawienie „Użyj wartości domyślnej” w widoku określonego sklepu (francuski) dla wszystkich produktów.
Jak zresetować dużą liczbę produktów (lub wszystkich produktów) do „Użyj wartości domyślnej” w widoku określonego sklepu?
źródło
$product->setData('visibility', false);
go użyję, zaznaczy to pole, ale także ustawię widoczność na „true”, czego nie chcęZakładając, że identyfikator sklepu dla francuskiego sklepu to 2, powinieneś uruchomić poniższe zapytania mysql:
To w zasadzie usuwa wartości atrybutów dla wszystkich atrybutów i produktów, dla których identyfikator sklepu jest ustawiony na 2. Gdy Magento nie może znaleźć wartości atrybutu produktu na podstawie konkretnego identyfikatora sklepu, wybiera wartość domyślną.
źródło
false
tak jak ja, zaznaczona zostanie opcja „użyj wartości domyślnej”. Chociaż twoje rozwiązanie może działać, osobiście nie lubię korzystać z bezpośrednich zapytań SQL.Przyłączam się trochę później, ale tak naprawdę nie podobała mi się żadna z powyższych odpowiedzi.
Oto moja próba, nie w pełni przetestowana, ale wydaje się, że robi to, czego potrzebuję.
źródło
Możesz użyć core_block_abstract_to_html_przed zdarzeniem adminhtml, aby dodać wymagane pola wyboru dla każdego atrybutu w formularzu masowej aktualizacji administratora.
Następnie należy użyć zdarzenia catalog_product_attribute_update_before przed usunięciem wartości z tabel EAV dla określonego widoku sklepu, tylko dla tych atrybutów, których pole wyboru wstrzyknięto wcześniej za pomocą core_block_abstract_to_html_before ustawionego jako zaznaczone.
Mam nadzieję, że to pomaga.
Ten moduł robi dokładnie to: http://mageinn.com/product/adminextra/ Możliwe jest również zresetowanie atrybutu „ url_key ” za pomocą tego modułu.
źródło