PS PrestaShop Średnio zaawansowany

DataFirefly Catalog Merge: scalanie duplikatów atrybutów i cech

Instalacja, ustawienia, scalanie zduplikowanych wartości atrybutów i cech, kolejność wyświetlania i rozwiązywanie problemów.

Zaktualizowano Wersja modułu 1.0.0

<h2>Instalacja</h2>
<p>Zainstaluj moduł z poziomu <strong>Moduły > Menedżer modułów > Wgraj moduł</strong>, przesyłając plik ZIP, albo umieść katalog <code>dfcatalogmerge</code> w folderze <code>/modules/</code> swojego sklepu i kliknij Instaluj.</p>
<p>Podczas instalacji moduł tworzy dwie tabele (pozycje wartości cech oraz historię scaleń), rejestruje hook <code>filterProductContent</code> i dodaje zakładkę <strong>Scalanie katalogu</strong> w menu Katalog.</p>
<div class=”df-callout warn”><p>Ten moduł trwale zmienia dane katalogu. Przed pierwszą akcją porządkową wykonaj kopię zapasową bazy danych. Scaleń nie można cofnąć.</p></div>

<h2>Ustawienia modułu</h2>
<p>Ustawienia znajdują się na stronie konfiguracji modułu. Cztery opcje, wszystkie domyślnie włączone.</p>
<h3>Wymuszaj kolejność na kartach produktów</h3>
<p>Stosuje ustalone pozycje do wartości cech wyświetlanych na karcie produktu. Ta opcja jest niezbędna w PrestaShop 8, którego rdzeń nie sortuje wartości cech. W PrestaShop 9 moduł dodatkowo zasila natywną kolumnę pozycji, a opcja gwarantuje ten sam wynik niezależnie od ustawienia sklepu <code>PS_FEATURE_VALUES_ORDER</code>.</p>
<h3>Scalaj zduplikowane kombinacje</h3>
<p>Gdy dwie kombinacje tego samego produktu stają się po scaleniu identyczne, moduł łączy je automatycznie. Wyłącz tę opcję tylko wtedy, gdy chcesz obsłużyć takie przypadki ręcznie, pamiętając, że PrestaShop źle radzi sobie z dwiema kombinacjami o dokładnie tych samych atrybutach.</p>
<h3>Aktualizuj tabele innych modułów</h3>
<p>Moduł przeszukuje bazę danych pod kątem wszystkich tabel spoza rdzenia zawierających kolumnę <code>id_attribute</code> lub <code>id_feature_value</code>, w szczególności indeks wyszukiwania fasetowego, i przekierowuje albo usuwa objęte wiersze. Bez tej opcji po scaleniu mogą pozostać filtry widma.</p>
<h3>Zachowaj historię scaleń</h3>
<p>Zapisuje każde zastosowane scalenie: wartość źródłową, wartość docelową, liczbę zmienionych wierszy, pracownika i datę. Do wglądu w zakładce Historia.</p>

<h2>Scalanie wartości atrybutów</h2>
<p>Otwórz <strong>Katalog > Scalanie katalogu</strong>, zakładka <strong>Wartości atrybutów</strong>. Wybierz grupę atrybutów do uporządkowania oraz język, w którym chcesz czytać etykiety.</p>
<p>Tabela wymienia wartości grupy wraz z liczbą produktów i kombinacji, które ich używają. Zaznacz duplikaty do usunięcia, wybierz wartość do zachowania na liście „Scal zaznaczone wartości w”, a następnie kliknij <strong>Symuluj</strong>.</p>
<h3>Jak czytać raport symulacji</h3>
<p>Symulacja nic nie zapisuje. Raport podaje liczbę wierszy kombinacji do konwersji, objęte produkty, kombinacje zawierające już wartość docelową oraz te, które po scaleniu staną się identyczne. Jeśli raport Ci odpowiada, kliknij <strong>Zastosuj to scalenie</strong>.</p>
<h3>Co dzieje się z kombinacjami</h3>
<p>Wszystkie kombinacje używające usuwanej wartości przechodzą na wartość zachowaną. Trzy szczególne przypadki są obsługiwane automatycznie:</p>
<ul>
<li>Kombinacja zawierała już wartość docelową i jej duplikat: zduplikowany wiersz jest usuwany, reszta kombinacji pozostaje nienaruszona.</li>
<li>Dwie kombinacje tego samego produktu stają się identyczne: zostają połączone. Ilości są sumowane sklep po sklepie, zdjęcia i ceny specjalne przenoszone, kombinacja domyślna zachowana, a stan produktu nadrzędnego zresynchronizowany.</li>
<li>Otwarte koszyki odwołujące się do usuniętej kombinacji są przekierowywane na tę, która pozostaje.</li>
</ul>
<div class=”df-callout note”><p>Scalane wartości muszą należeć do tej samej grupy atrybutów co wartość docelowa. Moduł odrzuca scalenie między dwiema różnymi grupami, które dałoby niespójne kombinacje.</p></div>

<h2>Scalanie wartości cech</h2>
<p>Zakładka <strong>Wartości cech</strong> działa tak samo: wybierz cechę, zaznacz duplikaty, wskaż wartość docelową, zasymuluj i zastosuj.</p>
<p>Przypisania produktów są konwertowane na wartość zachowaną. Jeśli produkt miał już obie wartości, zduplikowane przypisanie zostaje usunięte. W PrestaShop 9 wartości cech powiązane z kombinacjami są obsługiwane równocześnie.</p>
<h3>Wartości niestandardowe</h3>
<p>PrestaShop pozwala wpisać wartość cechy właściwą tylko dla jednego produktu, oznaczoną w tabeli jako <em>niestandardowa</em>. Takie wartości są po imporcie głównym źródłem duplikatów. Możesz scalić je z wartością współdzieloną jak każdą inną. Jeśli wartość docelowa sama była niestandardowa i po scaleniu jest używana przez kilka produktów, moduł automatycznie zmienia ją we wartość współdzieloną.</p>

<h2>Automatyczne wykrywanie duplikatów</h2>
<p>Zakładka <strong>Wykrywanie duplikatów</strong> analizuje cały katalog i grupuje wartości o identycznej etykiecie po pominięciu wielkości liter, znaków diakrytycznych, interpunkcji i powtórzonych spacji. „Czerwony”, „czerwony” i „CZERWONY” tworzą więc jedną grupę, podobnie jak „Bawełna bio” i „bawelna-bio”.</p>
<p>Dla każdej grupy jako cel proponowana jest wartość najczęściej używana, z preferencją dla wartości współdzielonych nad niestandardowymi. Przycisk <strong>Symuluj to scalenie</strong> przenosi grupę na ekran symulacji, gdzie zachowujesz kontrolę nad ostateczną decyzją.</p>
<p>Analiza działa w wybranym języku. W katalogu wielojęzycznym uruchom ją ponownie w każdym języku: duplikat może istnieć tylko w jednym tłumaczeniu.</p>

<h2>Ustalanie kolejności wyświetlania</h2>
<p>W dwóch pierwszych zakładkach każdy wiersz ma po lewej uchwyt. Przeciągnij wiersz, aby zmienić jego pozycję: nowa kolejność jest zapisywana od razu, bez przeładowania strony.</p>
<p>Przycisk <strong>Sortuj automatycznie</strong> porządkuje wartości bez pracy ręcznej. Rozmiary odzieży układają się według sekwencji XS, S, M, L, XL, XXL zamiast alfabetycznie, a wartości liczbowe według porządku naturalnego: 2 przed 10, 39 przed 41.</p>
<h3>Co widzi klient</h3>
<p>W przypadku wartości atrybutów pozycja jest tą, której używa selektor kombinacji na karcie produktu, zarówno w PrestaShop 8, jak i 9. Żadne dodatkowe ustawienie nie jest potrzebne.</p>
<p>W przypadku wartości cech kolejność obowiązuje w tabeli cech na karcie produktu, o ile opcja „Wymuszaj kolejność na kartach produktów” jest włączona. W PrestaShop 9 natywna pozycja jest zasilana równolegle, dzięki czemu ta sama kolejność pojawia się na pozostałych ekranach zaplecza.</p>
<div class=”df-callout tip”><p>Jeśli po zmianie kolejność nie zmienia się w sklepie, wyczyść pamięć podręczną. Karty produktów są buforowane przez PrestaShop i przez większość modułów wydajnościowych.</p></div>

<h2>Historia scaleń</h2>
<p>Zakładka <strong>Historia</strong> wymienia zastosowane scalenia, od najnowszego: data, typ, wartość źródłowa z identyfikatorem, wartość zachowana i liczba zmienionych wierszy. Identyfikatory są przechowywane, aby umożliwić porównanie z kopią zapasową bazy danych, gdyby trzeba było cofnąć zmiany ręcznie.</p>

<h2>Dobre praktyki</h2>
<ul>
<li>Wykonaj kopię zapasową bazy przed akcją porządkową, zwłaszcza w katalogu liczącym kilka tysięcy produktów.</li>
<li>Zawsze symuluj. Raport pokazuje kombinacje, które znikną w wyniku scalenia, zanim to nastąpi.</li>
<li>Pracuj grupa po grupie zamiast jednym przebiegiem, aby raporty pozostały czytelne.</li>
<li>Po dużym scaleniu przebuduj indeks wyszukiwania fasetowego, jeśli korzystasz z tego modułu.</li>
<li>W sklepie o dużym ruchu stosuj scalenia poza godzinami szczytu: konwersja kombinacji na chwilę blokuje objęte tabele.</li>
</ul>

<h2>Rozwiązywanie problemów</h2>
<h3>Scalenie zostaje odrzucone z komunikatem o grupie atrybutów</h3>
<p>Wszystkie zaznaczone wartości muszą należeć do tej samej grupy atrybutów co wartość docelowa, a w przypadku wartości cech do tej samej cechy. Sprawdź, czy nie zaznaczono wartości o tej samej nazwie z innej grupy.</p>
<h3>Kolejność wartości cech nie zmienia się na karcie produktu</h3>
<p>Sprawdź, czy opcja „Wymuszaj kolejność na kartach produktów” jest włączona, a następnie wyczyść pamięć podręczną. Jeśli szablon wyświetla cechy poprzez moduł zewnętrzny zamiast natywnych zmiennych karty produktu, kolejność może nie zostać przejęta: skontaktuj się z nami, podając nazwę szablonu.</p>
<h3>Scalenie zostało przerwane</h3>
<p>Zapisy odbywają się w transakcji: w razie błędu baza wraca do stanu początkowego i żadne dane nie giną. Komunikat błędu u góry ekranu zawiera przyczynę. Aby wycofanie zadziałało, tabele muszą być w InnoDB.</p>
<h3>Filtry fasetowe nadal pokazują usuniętą wartość</h3>
<p>Upewnij się, że opcja „Aktualizuj tabele innych modułów” była włączona w momencie scalenia, a następnie przebuduj indeks modułu nawigacji fasetowej z poziomu jego strony konfiguracji.</p>

<h2>Zgodność</h2>
<ul>
<li>PrestaShop od 8.0 do 9.x, ten sam plik ZIP obsługuje obie gałęzie.</li>
<li>Wielosklepowość i wielojęzyczność.</li>
<li>Architektura ModuleAdminController, bez zależności Composer.</li>
<li>Interfejs dostępny po polsku, francusku, angielsku, hiszpańsku, niemiecku, włosku, niderlandzku i portugalsku.</li>
</ul>

Czy ta strona była pomocna?

Nadal utknąłeś? Napisz do wsparcia