Masowa aktualizacja produktów

Dokumentacja CC Masowa Aktualizacja Produktów
Kompleksowa dokumentacja dla modułu masowej aktualizacji ilości i cen produktów w PrestaShop z obsługą importu plików, zadań CRON oraz aktualizacji według kryteriów (cc_ps_mass_update_product).

Spis treści
  1. Wprowadzenie
  2. Instalacja
  3. Aktywacja licencji
  4. Panel zarządzania
  5. Import plików
  6. Masowa aktualizacja według kryteriów
  7. Zadania CRON
  8. System logowania
  9. Typy identyfikatorów produktów
  10. Mapowanie kolumn
  11. Rozwiązywanie problemów
  12. FAQ

1. Wprowadzenie
CC Masowy Aktualizator Produktów to zaawansowany moduł do masowej aktualizacji ilości i cen produktów w PrestaShop. Moduł umożliwia import danych z plików CSV, Excel oraz XLS, aktualizację według kryteriów oraz automatyzację procesów za pomocą zadań CRON.

Moduł oferuje:
  • Import z plików CSV, XLS, XLSX z różnych źródeł (upload, serwer, URL)
  • Masową aktualizację produktów według kryteriów (kategorie, cenowy zakres, producent)
  • Obsługę zadań CRON w dwóch trybach (konfiguracja i parametry URL)
  • Wsparcie różnych typów identyfikatorów produktów (ID, EAN, UPC, ISBN, MPN, Reference, GTIN)
  • Zaawansowany system logowania operacji
  • Intuicyjne mapowanie kolumn z podglądem pliku
  • Walidację i kontrolę błędów
  • System zarządzania licencjami
  • Zapamiętywanie ustawień użytkownika

2. Instalacja
Wymagania systemowe
  • PrestaShop 1.7 lub nowszy
  • PHP 7.1 lub nowszy
  • Rozszerzenie PHP: PhpSpreadsheet (dla plików Excel)
  • Minimalna ilość pamięci: 128MB
  • Uprawnienia do tworzenia katalogów tymczasowych
Proces instalacji
  1. Pobierz plik ZIP modułu z oficjalnego sklepu cocos.codes
  2. Zaloguj się do panelu administracyjnego PrestaShop
  3. Przejdź do: Moduły → Menedżer modułów → Dodaj nowy moduł
  4. Kliknij „Dodaj moduł” i wybierz pobrany plik ZIP
  5. Po zakończeniu instalacji kliknij „Konfiguruj”
  6. Moduł automatycznie utworzy katalogi tymczasowe i zainstaluje wymagane ustawienia
Info
Po instalacji moduł automatycznie utworzy zakładkę „Masowy aktualizator” w menu „Usprawnienia” panelu administracyjnego oraz niezbędne katalogi robocze w folderze modułu.

3. Aktywacja licencji
Przed rozpoczęciem korzystania z pełnej funkcjonalności modułu konieczna jest aktywacja licencji:
  1. Po instalacji przejdź do konfiguracji modułu
  2. Wybierz zakładkę „Licencja”
  3. Wprowadź klucz licencyjny otrzymany po zakupie
  4. Kliknij „Aktywuj licencję”
  5. Po pomyślnej aktywacji zobaczysz komunikat potwierdzający i odblokowane zostaną wszystkie funkcje
Ostrzeżenie
Bez aktywnej licencji moduł będzie działał w trybie ograniczonym. W górnej części panelu administracyjnego będzie wyświetlany komunikat o nieaktywnej licencji, a wszystkie operacje aktualizacji będą zablokowane.

4. Panel zarządzania
Panel zarządzania modułem dostępny jest w menu „Usprawnienia” → „Masowy aktualizator” i składa się z następujących zakładek:

Główne zakładki:
  • Import pliku – import danych z plików CSV/Excel
  • Masowa aktualizacja – aktualizacja produktów według kryteriów
  • Zadania CRON – konfiguracja automatyzacji
  • Logi – podgląd i zarządzanie logami operacji

Zakładki konfiguracyjne modułu:
  • Ustawienia – konfiguracja ogólna modułu
  • Dokumentacja – link do instrukcji online
  • Wsparcie – dostęp do pomocy technicznej
  • Wtyczki – informacje o dodatkowych rozszerzeniach
  • Licencja – zarządzanie licencją modułu
Wskazówka
Moduł automatycznie zapamiętuje ustawienia użytkownika (mapowania kolumn, źródła plików, typu identyfikatorów) w localStorage przeglądarki, co znacznie przyspiesza pracę przy powtarzających się operacjach.

5. Import plików
Zakładka „Import pliku” umożliwia import danych produktowych z różnych źródeł i formatów.

Obsługiwane źródła plików:
  • Upload pliku – przesłanie pliku bezpośrednio z komputera
  • Ścieżka na serwerze – wskazanie pliku znajdującego się na serwerze
  • URL do pliku – pobranie pliku z zewnętrznego adresu URL
Obsługiwane formaty:
  • CSV (z automatycznym wykrywaniem separatora: , ; | tab)
  • XLS (starsze pliki Excel)
  • XLSX (nowsze pliki Excel)
Proces importu:
  1. Wybierz źródło pliku
  2. Wskaż plik (upload, ścieżka lub URL)
  3. Wybierz typ identyfikatora produktu
  4. Określ, czy plik zawiera nagłówki
  5. Kliknij „Podgląd i mapowanie”
  6. Zmapuj kolumny z danymi (identyfikator, ilość, cena)
  7. Kliknij „Wykonaj import”
Walidacja plików:
  • Maksymalny rozmiar pliku: 10MB (konfigurowalny)
  • Sprawdzanie formatu i integralności pliku
  • Walidacja struktury danych
  • Kontrola dostępności plików zewnętrznych
Notatka
Moduł automatycznie wykrywa separator w plikach CSV i obsługuje różne kodowania znaków. Pliki tymczasowe są automatycznie usuwane po zakończeniu operacji importu.

6. Masowa aktualizacja według kryteriów
Zakładka „Masowa aktualizacja” pozwala na aktualizację produktów na podstawie określonych kryteriów bez konieczności importu pliku.

Dostępne kryteria selekcji:
  • Kategorie – wybór produktów z określonych kategorii
  • Zakres ID produktów – od określonego ID do określonego ID
  • Zakres cenowy – produkty o cenach w określonym przedziale
  • Producent – produkty określonego producenta
  • Status – aktywne lub nieaktywne produkty
Możliwe aktualizacje:
  • Nowa ilość – ustawienie określonej ilości dla wszystkich wybranych produktów
  • Nowa cena – ustawienie określonej ceny dla wszystkich wybranych produktów
  • Można aktualizować jednocześnie ilość i cenę lub tylko jeden z parametrów
Proces aktualizacji według kryteriów:
  1. Wybierz kryteria selekcji produktów
  2. Określ nowe wartości (ilość i/lub cena)
  3. Kliknij „Aktualizuj produkty”
  4. System pokaże liczbę zaktualizowanych produktów i ewentualne błędy
Ostrzeżenie
Masowa aktualizacja według kryteriów zmienia dane wszystkich produktów spełniających określone warunki. Zalecamy wykonanie kopii zapasowej bazy danych przed przeprowadzeniem masowych operacji.

7. Zadania CRON
Zakładka „Zadania CRON” umożliwia konfigurację automatycznych zadań aktualizacji produktów. Moduł oferuje dwa tryby pracy z CRON-em:

Tryb konfiguracji (jeden szablon)
  • Zapisanie ustawień w bazie danych
  • Jedno zadanie CRON dla wszystkich automatycznych aktualizacji
  • Łatwa konfiguracja przez interfejs webowy
  • URL zadania: /modules/cc_ps_mass_update_product/controllers/front/cron.php?token=…
Tryb parametrów URL (wiele zadań)
  • Przekazywanie wszystkich parametrów bezpośrednio w URL
  • Możliwość tworzenia wielu różnych zadań CRON
  • Elastyczność konfiguracji dla zaawansowanych użytkowników
  • Każde zadanie może mieć inne ustawienia
Konfiguracja trybu konfiguracji:
  1. Włącz „Zadania CRON”
  2. Wybierz źródło pliku (serwer lub URL)
  3. Wskaż ścieżkę lub URL do pliku
  4. Skonfiguruj typ identyfikatora i mapowanie kolumn
  5. Zapisz ustawienia
  6. Dodaj URL do crontab serwera
Parametry dla trybu URL:
  • token – token bezpieczeństwa (wymagany)
  • source – źródło pliku (server|url)
  • file_path – ścieżka do pliku na serwerze
  • file_url – URL do pliku
  • identifier_type – typ identyfikatora produktu
  • has_header – czy plik zawiera nagłówki (1|0)
  • mapping_identifier – numer kolumny z identyfikatorem
  • mapping_quantity – numer kolumny z ilością
  • mapping_price – numer kolumny z ceną
Przykłady zadań CRON:
# Codziennie o 2:00 - tryb konfiguracji
0 2 * * * /usr/bin/curl "https://sklep.pl/modules/cc_ps_mass_update_product/controllers/front/cron.php?token=abc123"
Codziennie o 3:00 - aktualizacja ilości z serwera
0 3 * * * /usr/bin/curl "https://sklep.pl/modules/cc_ps_mass_update_product/controllers/front/cron.php?token=abc123&source=server&file_path=/var/www/files/quantities.csv&identifier_type=ean&has_header=1&mapping_identifier=0&mapping_quantity=1"
Codziennie o 4:00 - aktualizacja cen z URL
0 4 * * * /usr/bin/curl "https://sklep.pl/modules/cc_ps_mass_update_product/controllers/front/cron.php?token=abc123&source=url&file_url=https://dostawca.pl/prices.csv&identifier_type=reference&has_header=1&mapping_identifier=0&mapping_price=2"
Info
Zadania CRON zwracają odpowiedź w formacie JSON z informacjami o powodzeniu operacji, liczbie zaktualizowanych produktów oraz czasie wykonania. Wszystkie operacje są logowane w systemie logów modułu.

8. System logowania
Zakładka „Logi” udostępnia zaawansowany system śledzenia wszystkich operacji modułu.

Funkcje systemu logowania:
  • Automatyczne logowanie wszystkich operacji aktualizacji
  • Różne poziomy logowania (INFO, WARNING, ERROR)
  • Oddzielne pliki logów dla każdego dnia
  • Podgląd logów bezpośrednio w panelu administracyjnym
  • Możliwość pobierania pełnych plików logów
  • Automatyczne czyszczenie starych logów
Zarządzanie logami:
  • Status logowania – włączenie/wyłączenie zapisywania logów
  • Lista plików logów – przegląd wszystkich plików z datami i rozmiarami
  • Podgląd logów – wyświetlanie ostatnich 200 linii z kolorowaniem według poziomu
  • Pobieranie logów – download pełnych plików logów
  • Czyszczenie starych logów – usuwanie logów starszych niż 30 dni
Format logów:
[2025-01-15 14:30:22] [INFO] Rozpoczynam masową aktualizację z pliku: /var/www/files/products.csv
[2025-01-15 14:30:23] [INFO] Zaktualizowano ilość produktu: ID 123, Ilość: 50
[2025-01-15 14:30:23] [WARNING] Produkt nie znaleziony po kodzie EAN: 1234567890123
[2025-01-15 14:30:25] [INFO] Masowa aktualizacja zakończona | Context: {"success":45,"failed":2}
Wskazówka
Logi są zapisywane zarówno w systemie logowania modułu, jak i w standardowych logach PrestaShop. Dzięki temu można śledzić operacje również poprzez standardowe narzędzia do analizy logów serwera.

9. Typy identyfikatorów produktów
Moduł obsługuje różne sposoby identyfikacji produktów, co zapewnia maksymalną elastyczność przy imporcie danych.

Obsługiwane typy identyfikatorów:
TypOpisPrzykład
ID produktuWewnętrzne ID PrestaShop123, 456, 789
Reference (SKU)Kod produktu/SKUPROD-001, ABC-123
EANEuropejski kod produktu (8-13 cyfr)1234567890123
UPCUniwersalny kod produktu123456789012
ISBNNumer książki978-3-16-148410-0
MPNNumer części producentaAB-12345
INDEKSIndeks produktu (używa pola Reference)IND-001
GTINGlobalny kod handlowy (sprawdza EAN, UPC, ISBN)Dowolny z powyższych

Wybór odpowiedniego identyfikatora:
  • ID produktu – najszybszy, ale wymagający znajomości wewnętrznych ID
  • Reference/SKU – najczęściej używany w sklepach internetowych
  • EAN – standard dla produktów fizycznych
  • GTIN – uniwersalny, sprawdza wszystkie możliwe kody kreskowe
Notatka
Wybór odpowiedniego typu identyfikatora jest kluczowy dla powodzenia importu. Moduł automatycznie waliduje formaty identyfikatorów i informuje o błędnych wartościach w logach.

10. Mapowanie kolumn
System mapowania kolumn pozwala na elastyczne przypisanie danych z pliku do odpowiednich pól produktu.

Proces mapowania:
  1. Po wybraniu pliku system pokazuje podgląd pierwszych 5 wierszy
  2. Użytkownik wskazuje, która kolumna zawiera identyfikator produktu
  3. Opcjonalnie wskazuje kolumny z ilością i/lub ceną
  4. System waliduje poprawność mapowania
  5. Po zatwierdzeniu następuje import danych
Wymagania mapowania:
  • Kolumna identyfikatora – zawsze wymagana
  • Kolumna ilości – opcjonalna (liczby całkowite ≥ 0)
  • Kolumna ceny – opcjonalna (liczby rzeczywiste ≥ 0, max 2 miejsca po przecinku)
  • Minimum jedna z kolumn (ilość lub cena) musi być zmapowana
  • Kolumny nie mogą być identyczne
Inteligentne zapamiętywanie:
  • Moduł automatycznie zapamiętuje ostatnie mapowania w localStorage
  • Mapowania są przywracane dla plików o identycznej strukturze
  • Każde mapowanie zawiera informację o typie identyfikatora i nagłówkach
  • Mapowania są ważne przez 7 dni
  • Możliwość ręcznego wyczyszczenia zapamiętanych ustawień
Przykład pliku CSV:
ean,nazwa,ilosc,cena
1234567890123,"Produkt A",50,19.99
1234567890124,"Produkt B",30,29.99
1234567890125,"Produkt C",0,39.99
Mapowanie: kolumna 0 (ean) → identyfikator, kolumna 2 (ilosc) → ilość, kolumna 3 (cena) → cena
Sukces
Automatyczne zapamiętywanie mapowań znacznie przyspiesza pracę przy regularnych importach. System rozpoznaje strukturę pliku i przywraca odpowiednie ustawienia.

11. Rozwiązywanie problemów
Import pliku nie działa
  1. Sprawdź, czy moduł ma aktywną licencję
  2. Upewnij się, że plik ma obsługiwany format (CSV, XLS, XLSX)
  3. Sprawdź rozmiar pliku (domyślnie max 10MB)
  4. Dla plików z serwera sprawdź uprawnienia do odczytu
  5. Dla URL sprawdź dostępność i poprawność adresu
  6. Sprawdź logi modułu w poszukiwaniu szczegółów błędu
Produkty nie są aktualizowane
  1. Sprawdź poprawność mapowania kolumn
  2. Zweryfikuj typ identyfikatora produktu
  3. Upewnij się, że identyfikatory w pliku są poprawne
  4. Sprawdź, czy produkty istnieją w sklepie
  5. Zweryfikuj format danych (liczby dla ilości i cen)
  6. Przejrzyj logi w poszukiwaniu ostrzeżeń
Zadania CRON nie działają
  1. Sprawdź poprawność tokena bezpieczeństwa
  2. Upewnij się, że cron jest włączony w konfiguracji (tryb konfiguracji)
  3. Zweryfikuj dostępność pliku źródłowego
  4. Sprawdź logi zadań CRON na serwerze
  5. Upewnij się, że URL zadania CRON jest poprawny
  6. Sprawdź, czy serwer może wykonywać zapytania HTTP
Problemy z wydajnością
  1. Zmniejsz rozmiar importowanych plików
  2. Zwiększ limit czasu wykonania PHP (max_execution_time)
  3. Zwiększ limit pamięci PHP (memory_limit)
  4. Wyłącz logowanie dla bardzo dużych importów
  5. Użyj zadań CRON zamiast importu przez przeglądarkę
  6. Podziel duże pliki na mniejsze części
Błąd
Jeśli nadal napotykasz problemy, sprawdź logi PHP serwera oraz logi modułu. W przypadku błędów krytycznych skontaktuj się z wsparciem COCOS poprzez stronę cocos.codes/wsparcie.

12. FAQ
Jakie są limity dotyczące rozmiaru plików?
Domyślny limit to 10MB, ale można go zwiększyć w ustawieniach modułu. Pamiętaj o limitach PHP (upload_max_filesize, post_max_size).

Czy mogę aktualizować tylko ceny bez zmiany ilości?
Tak, można aktualizować tylko ceny lub tylko ilości. W mapowaniu wystarczy wskazać odpowiednią kolumnę, a drugą pozostawić pustą.

Czy moduł obsługuje produkty z atrybutami?
Moduł aktualizuje produkty bazowe. Dla produktów z atrybutami aktualizuje się ilość i cenę produktu głównego.

Jak często mogę uruchamiać zadania CRON?
Częstotliwość zależy od wielkości plików i zasobów serwera. Zalecamy nie częściej niż co 15 minut dla dużych plików.

Czy mogę używać modułu na wielu sklepach?
Licencja obowiązuje dla jednej domeny. Dla każdego sklepu potrzebna jest oddzielna licencja.

Co się stanie z produktami, które nie zostaną znalezione?
Produkty nieznalezione są pomijane i rejestrowane w logach jako ostrzeżenia. Nie wpływa to na pozostałe produkty w imporcie.

Czy mogę przywrócić poprzednie wartości po aktualizacji?
Moduł nie tworzy automatycznie kopii zapasowych. Zalecamy wykonanie kopii zapasowej bazy danych przed masowymi operacjami.

Jak mogę zautomatyzować import z FTP?
Użyj zadań CRON z trybem „ścieżka na serwerze”, wskazując na katalog, do którego pliki są przesyłane przez FTP.

Czy moduł loguje wszystkie operacje?
Tak, wszystkie operacje są logowane z możliwością włączenia/wyłączenia tej funkcji w ustawieniach. Logi zawierają szczegółowe informacje o powodzeniu i błędach.

Jakie kodowania znaków są obsługiwane?
Moduł automatycznie wykrywa i obsługuje najpopularniejsze kodowania, w tym UTF-8, ISO-8859-1, Windows-1250.

Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Ostatnio oglądane produkty

Nowość
PrestaShop PayNow PrestaShop PayNow

[DARMOWY] PrestaShop PayNow

(0)
$0,00 bez VAT
Nowość
Usługi programistyczne PrestaShop i WordPress

Usługi programistyczne PrestaShop i WordPress

(0)
$27,00 bez VAT
Nowość
WordPress Anty Spam WordPress Anty Spam

WordPress Anty Spam

(0)
$49,00 bez VAT
Nowość
Masowa aktualizacja produktów Masowa aktualizacja produktów

Masowa aktualizacja produktów

(0)
$49,00 bez VAT

Logowanie

Koszyk

Zamknij

Twój koszyk jest pusty.

Rozpocznij zakupy