Zarządzanie ofertą i magazynem XML Feed Estimated reading: 11 minutes 372 views Summary: Sprawdź, w jaki sposób skonfigurować moduł XML Feed w sklepie na platformie AtomStore. Z artykułu dowiesz się, w jaki sposób skonfigurować feed XML w sklepie na platformie AtomStore. Do czego służy moduł XML Feed? Moduł XML Feed jest nowym modułem w AtomStore, który służy do tworzenia rozbudowanych oraz bardziej ‘customowych’ feedów w formacie XML. Uruchomienie i konfiguracja modułu 1. Aby rozpocząć konfigurację feedów, przejdź do Katalog Feedy lub skorzystaj z adresu URL: nazwasklepu/admin/xml_feeds. 2. Z lewej strony ekranu znajduje się lista dodanych wcześniej feedów wraz z kolumnami: Nazwa – wybrana przez administratora nazwa feedu; Format – Google/Facebook lub własny; Aktywny – czy jest aktywny i wyświetli się pod URL; Ostatnie odświeżanie – data wygenerowania / odświeżenia feedu; URL – adres feedu Opcje w kolumnie ikonki: Edytuj – przechodzimy do edycji feedu; Duplikuj – tworzymy kopię feedu; Odśwież – ręczne odświeżenie feedu; Usuń. 3. Z prawej strony ekranu znajduje się bezpośrednie okno dodawania feedu. Opcjonalnie można skorzystać także z przycisku Dodaj nowy feed . 4. Moduł pozwala na tworzenie dwóch typów feedów. W formacie Google/Facebook oraz feedów własnych. W tym miejscu warto rozróżnić od siebie te dwa rodzaje, które zostaną szczegółowo opisane w kolejnych sekcjach. Format Google/Facebook 1. Dodając nowy feed w formacie Google/Facebook należy skonfigurować ustawienia: Nazwa – podajemy dowolną nazwę, będzie wyświetlana w panelu Status – aktywny / nieaktywny. W tym miejscu można wyłączyć wyświetlanie feeda; Sklep – ustawienie służące do wybrania sklepu, którego oferta zostanie wyświetlona w feedzie. Opcja nieistotna jeżeli w sklepie nie jest włączony moduł Multistore; Wykluczone kategorie – domyślne w XMLu wyświetlane są produkty ze wszystkich kategorii. W tym miejscu możemy wykluczyć kategorie. Checkbox zastosuj wewnątrz zaznaczonych kategorii spowoduje, że jeżeli zaznaczona zostanie kategoria nadrzędna, to wykluczone zostaną także kategorie podrzędne; Wykluczeni producenci – w tym miejscu można wykluczyć produkty danego producenta. W wyszukiwarce należy znaleźć istniejącego producenta; Wykluczenie wg atrybutów/wartości – w tym miejscu można wykluczyć produkty z danym atrybutem lub z konkretnymi wartościami tego atrybutu (np. wszystkie produkty z atrybutem Kolor lub wszystkie posiadające wartość tego parametru np. zielony). W przypadku wskazania wielu atrybutów lub wielu wartości wystarczy co najmniej jedno dopasowanie, aby produkt został wykluczony; Wykluczaj produkty bez zdjęć – tak/nie; Wymagane atrybuty/wartości – odwrotnie niż w przypadku wykluczenia, w tym miejscu można wskazać jakie atrybuty lub kombinacje atrybuty-wartości są niezbędne, aby produkt wyświetlić w feedzie. Jeśli wskazany został więcej niż jeden atrybut, produkt musi posiadać każdy z nich (wskazanych), aby był wyświetlany w feedzie. Pomiędzy wieloma wartościami jednego atrybutu istnieje operator logiczny lub . Wystarczy, że produkt posiada dowolną ze wskazanych wartości. Przykładowo, jeśli wymagany jest atrybut koloru z wartościami zielony i czerwony , wystarczy, że produkt będzie posiadać wartość atrybutu zielony ; Minimalny stan dostępny produktu – określamy jaki minimalny stan dostępny powinien mieć produkt, by móc się wyświetlić w XML. Ustawienie powiązane z Dostępność produktu – sprawdzaj stan dostępny produktu; Dostępność produktu – sprawdzaj stan dostępny produktu – tak / nie. Jeżeli zaznaczymy tak, to wtedy decydować będzie liczba sztuk produktu na stanie dostępnym; Wykluczaj produkty niedostępne – tak / nie. Ustawienie dotyczy weryfikacji statusu dostępności produktu (nie fizycznej dostępności na stanie dostępnym) i bierze pod uwagę flagę Sprzedaż w edycji tego statusu dostępności; Przykłady konfiguracji powyższych ustawień: Przykład 1: W ustawieniach: Wykluczaj produkty niedostępne zaznaczona została opcja Tak ; Dostępność produktu – sprawdzaj stan dostępny produktu została ustawiona opcja Nie . Przykładowy produkt posiada 3 sztuki na stanie dostępnym, natomiast jego status dostępności to Niedostępny wraz z flagą Sprzedaż = nie . W takiej sytuacji nie zostanie wyświetlony w feedzie. Przykład 2: W ustawieniach: Wykluczaj produkty niedostępne zaznaczona została opcja Tak ; Dostępność produktu – sprawdzaj stan dostępny produktu została ustawiona opcja Tak ; Minimalny stan dostępny produktu = 4 . Produkt posiada 3 sztuki na stanie dostępnym, natomiast jego status dostępności to Dostępny . W takiej sytuacji nie zostanie wyświetlony w feedzie z uwagi na zbyt niską liczbę dostępnych sztuk. 2. Kolejne ustawienia do konfiguracji to: Parametry UTM – można określić parametry UTM, które zostaną dodane do linku do produktu, dodajemy je w następujący sposób: Należy wprowadzić nazwę parametru, a po dwukropku jego wartość np. UTM_CAMPAIGN:black-friday ; Poszczególne pary nazwa parametru-wartość należy oddzielić średnikiem np. UTM_CAMPAIGN:black-friday;UTM_TERM:ołówek . Jeżeli zatem w ustawieniu parametry zostaną wprowadzone w następujący sposób: UTM_CAMPAIGN:black-friday;UTM_TERM:ołówek , to w feedzie pojawi się link z tymi parametrami: Maksymalne wymiary miniatury, wysokość w px i Maksymalne wymiary miniatury, szerokość w px – dwa ustawienia decydujące o wymiarach miniatury zdjęcia produktu; Cennik – wybór cennika produktowego, z którego ceny będą pobierane do feedu; Cena netto/brutto – ustawienie pozwalające zdecydować czy ceny mają mieć wartość netto, czy brutto; Pola w pliku XML – w ustawieniu należy wybrać z listy rozwijanej pola produktowe, które mają wyświetlać się w feedzie; Prezentuj warianty jako osobne, zgrupowane produkty – tak / nie. Włączenie ustawienia powoduje rozbicie wariantów na osobne produkty, które będą razem zgrupowane; Szablon nazw produktów – w ustawieniu należy skonfigurować szablon nazw produktów za pomocą znaczników. Dostępne znaczniki to: #nazwa#, #producent#, #kod# oraz #atrybut:X#, gdzie X to ID atrybutu. Poniżej znajduje się przykład opisujący działanie ustawienia. Przykład zastosowania: W ustawieniu wpisano znaczniki: #nazwa# #producent# #kod# #atrybut:19# . W produkcie jest to: nazwa produktu, nazwa producenta, kod produktu i atrybut kolor produktu mający ID: 19: W feedzie produktowym nazwa produktu złożona z informacji pobranych znacznikami wygląda w następujący sposób: 3. Kolejne ustawienie to: Szablon nazw wariantów – ustawienie analogiczne do Szablon nazw produktów Przykład : W ustawieniu wprowadzony został następujący szablon: Rozmiar #atrybut:7# #nazwa# #producent# #kod# . W produkcie istnieje wariant o nazwie S: Widok w pliku feedu produktowego: 4. Kolejno: Atrybut ‘product_group’ – atrybut, którego wartość będzie przekazywana w znaczniku <g:product_group>: Przykład: Ustawienie feedu zostaje skonfigurowane w ten sposób: Wartość atrybutu, która została przypisana w produkcie: Widok w pliku feedu produktowego: 5. Widok mapowania czterech istotnych atrybutów na potrzeby feeda Google/FB można zobaczyć na poniższym zrzucie ekranu: Widok w pliku feedu produktowego: 6. Kolejne ustawienia to: Ograniczaj ofertę do produktów z dynamicznej listy – można w tym miejscu ograniczyć zakres feedu do produktów z danej dynamicznej listy; Kategorie – uwzględniaj mapowania – dotyczy wartości <g:google_product_category> w feedzie. W tym ustawieniu do wyboru są dostępne mapowania z różnych integracji w panelu. Jeżeli w edycji kategorii dodane zostanie mapowanie typu Google Feed: to wtedy do wyboru będzie opcja: MODULE_GOOGLE_MERCHANT : Widok w pliku feedu produktowego: 7. Następnie skonfiguruj: Harmonogram odświeżania – dni – w jakie dni tygodnia ma się odświeżać feed; Harmonogram odświeżania – godziny – w jakich godzinach ma się odświeżać; Harmonogram odświeżania – minuty – w jakich minutach ma się odświeżać. Przykładowo jeśli chcesz odświeżać feed codziennie 8:15, 8:30, 8:45, 11:15, 11:30 i 11:45, to należy ustawić harmonogram odświeżania w ten sposób: Format własny Opcja formatu własnego pozwala na zbudowanie feedu XML według własnego wzoru. Administrator może zdecydować jak będą nazywać się poszczególne znaczniki i w jakiej kolejności wyświetlą się w pliku XML. 1. Przejdź do dodawania feedu w Katalog Feed . 2. Po wybraniu w polu Format opcji Własny pojawi się okno podstawowej struktury pliku: 3. Feed wygenerowany na bazie takiej struktury będzie wyglądać w następujący sposób: 4. Poprawność struktury można zbadać za pomocą zewnętrznych narzędzi. Takim narzędziem może być przykładowo JSONformatter, który znajdziesz w tym miejscu. Poniższy zrzut ekranu obrazuje przykładowe badanie struktury feedu XML za pomocą tego narzędzia. 5. Tekstowe pole definiowania feedu XML w AtomStore posiada również podstawową, prostą walidację. 6.Kluczową rolę odgrywa atrybut product=”1″ . Decyduje on o tym, który węzeł jest powtarzany dla kolejnych produktów. Przykładowo dodając ten atrybut do węzła <towar , zostanie on powtórzony w feedzie w następujący sposób – na zrzucie ekranu widoczny jest podział na dwa produkty: 7. Z listy rozwijanej Znaczniki dostępne w formacie własnym można wybrać znaczniki, które chcesz umieścić w strukturze pliku. Znacznik umieszczany jest w strukturze za pomocą opcji Kopiuj do schowka . Przykład: Chcąc dodać pole kod_produktu z wykorzystaniem znacznika #ItemCode# , administrator powinien w strukturze dodać taki wpis: W efekcie, w feedzie XML kod produktu wyświetlony będzie w następujący sposób: UWAGA! Część znaczników musi zostać dodana w ściśle określony sposób. Takimi znacznikami będą: Znaczniki pobierające informacje o zdjęciach: #ItemMainImage# – tylko zdjęcie główne; #ItemImages# – wszystkie zdjęcia poza głównym; #ItemAllImages# – wszystkie zdjęcia. Znaczniki #ItemImages# oraz #ItemAllImages# muszą być zagnieżdżone w tagu nadrzędnym, ponieważ mogą zawierać więcej niż jedną pozycję. Otrzymują także oznaczenie multitag=”1″ . Z kolei znacznik #ItemMainImage# to pojedyncze zdjęcie i tego znacznika się nie zagnieżdża. Przykład: Struktura w AtomStore: Niektóre znaczniki stosowane np. do opisów produktów: Powinny mieć dodany w strukturze termin CDATA ; Oznakowanie w ten sposób powoduje, że dana treść jest traktowana wyłącznie jako tekst, a nie jako element struktury (opis może zawierać znaki, które mogłyby w przeciwnym wypadku zostać potraktowane jako znaczniki należące do struktury XML). Należy więc dodać znacznik opisu w taki sposób: <opis cdata = “1” atomdata=”#ItemDescription#” ></opis>. Na poniższym zrzucie ekranu widoczny jest przykład wykorzystania znacznika cdata w feedzie: Istnieje pięć znaczników przekazujących informacje o dostawach: #ItemShipping# – formy dostawy – zagnieżdża wymienione niżej trzy znaczniki; #ItemShippingService# – nazwa formy dostawy; #ItemShippingCountryCode# – kod kraju formy dostawy; #ItemShippingPrice# – kwota formy dostawy; #ItemShippingWeight# – waga formy dostawy. Znacznik #ItemShipping# służy do zagnieżdżenia w strukturze następnych trzech znaczników. Z kolei znacznik #ItemShippingWeight# jest samodzielny, pobiera wartość z masą produktu. Przykład: Struktura w AtomStore: Widok w pliku XML: Znaczniki związane z dodawaniem atrybutów: Celem przekazania do pliku XML atrybutu należy skorzystać ze znacznika #ItemAttribute:X# , gdzie “X” oznacza ID atrybutu. Przykład: Jeśli w produkcie występuje atrybut Kolor produktu , a jego ID = 19, to w strukturze należy umieścić znacznik w taki sposób: W pliku XML wyświetlone zostanie: 8. Ustawienia feedu własnego, znajdujące się poniżej struktury pokrywają się z opisanymi wyżej ustawieniami dla feedu Google/Facebook. 9. Znaczniki pobierające informacje dot. producentów to: #ItemProductTags# – znacznik, który pobierze tagi z karty produktu po przecinku; #ItemProducer# – znacznik, który pobierze producenta. 10. Znaczniki kategorii: #ItemMainCategoryPath# – znacznik, który tylko kategorię główną; #ItemCategoryPath# – znacznik, który pobierze wszystkie kategorie poza główną; #ItemAllCategoryPath# – znacznik, który pobierze wszystkie kategorie bez zróżnicowania. Znacznik #ItemCategoryPath# powinien być dodany w zagnieżdżeniu: Efekt w feedzie: Znacznik dot. dostępności produktu: #ItemAvailabilityStatus# – status zwróci wartości 1 jeśli produkt dostępny lub 0 jeśli niedostępny: Tagged:FeedFeed produktowyXMLXML Feed