DF Download Center: dokumentacja
Instalacja, konfiguracja i użytkowanie centrum pobierania dokumentów produktowych: zakładka na karcie produktu, indeksowana strona centralna, typy dokumentów, bezpieczeństwo plików.
Wprowadzenie
DF Download Center wiąże instrukcje, podręczniki, karty techniczne i certyfikaty CE bezpośrednio z Twoimi produktami. Każda karta produktu zyskuje zakładkę „Dokumenty i pliki do pobrania”, która wyświetla pliki pogrupowane według typu. Równolegle indeksowana strona centralna zbiera całą dokumentację katalogu, z wyszukiwarką, filtrami według typu i danymi strukturalnymi JSON-LD.
Moduł jest zgodny z PrestaShop od 8.0 do 9.x, obsługuje multistore, jest dostępny w pięciu językach i nie zależy ani od Composera, ani od żadnego zewnętrznego frameworka.
Instalacja
- W panelu administracyjnym przejdź do Moduły, następnie Menedżer modułów.
- Kliknij Wgraj moduł i wskaż plik
dfdownloadcenter-1.0.0.zip. - Kliknij Instaluj.
Instalacja tworzy tabele modułu, cztery domyślne typy dokumentów, zakładkę administracyjną w menu Katalog oraz rejestruje wymagane hooki.
Po instalacji wyczyść cache w Zaawansowane, następnie Wydajność. Trasa strony centralnej jest deklarowana przez hook routingu i zaczyna działać dopiero po regeneracji cache.
Uprawnienia
Folder modules/dfdownloadcenter/uploads/ musi być zapisywalny przez serwer WWW. Zawiera plik htaccess, który blokuje bezpośredni dostęp po HTTP: pliki wychodzą wyłącznie przez kontroler pobierania.
Konfiguracja
Otwórz moduł w Moduły, następnie Menedżer modułów, i kliknij Konfiguruj.
Strona centralna
- Włącz stronę centralną: gdy jest wyłączona, strona zwraca 404, a link z zakładki produktu znika.
- Slug adresu URL: segment adresu strony, na przykład
pobieranielubdownloads. Po każdej zmianie wyczyść cache. - Liczba dokumentów na stronę: domyślnie 20.
- Meta title i meta description: konfigurowane osobno dla każdego języka, używane w tagu title i meta description strony.
Typy dokumentów
Cztery typy są instalowane domyślnie i przetłumaczone na pięć języków katalogu:
- Instrukcje i podręczniki
- Karty techniczne
- Certyfikaty CE
- Inne dokumenty
Z poziomu ekranu konfiguracji możesz tworzyć, zmieniać nazwy i porządkować typy. Pozycja określa kolejność wyświetlania grup w zakładce produktu i na stronie centralnej.
Typu używanego przez co najmniej jeden dokument nie da się usunąć. Moduł pokazuje liczbę powiązanych dokumentów i prosi o wcześniejsze przypisanie ich do innego typu.
Zarządzanie dokumentami
Dokumentami zarządzasz w Katalog, następnie Centrum Pobierania. Lista pokazuje dla każdego dokumentu tytuł, typ, nazwę pliku, rozmiar, liczbę pobrań i status aktywności.
Tworzenie dokumentu
- Kliknij Dodaj.
- Wpisz tytuł w każdym języku. Tytuł jest wymagany w języku domyślnym.
- Dodaj opcjonalny opis, również dla każdego języka. Wyświetla się pod tytułem w zakładce produktu i na stronie centralnej.
- Wybierz typ dokumentu.
- Wskaż plik do wgrania.
- Powiąż produkty, wpisując ich nazwę lub indeks w polu wyszukiwania: podpowiedzi pojawiają się po dwóch znakach, a każdy wybrany produkt staje się znacznikiem usuwanym jednym kliknięciem.
- Ustaw pozycję dokumentu w obrębie jego typu oraz status aktywny.
- Zapisz.
Formaty i rozmiar plików
Akceptowane rozszerzenia to: PDF, DOC, DOCX, ODT, XLS, XLSX, ODS, CSV, TXT, RTF, ZIP, PNG, JPG, JPEG, WEBP, SVG, DWG, DXF, STEP i STP. Maksymalny rozmiar pojedynczego pliku to 50 MB.
Jeśli plik mniejszy niż 50 MB zostaje odrzucony, sprawdź dyrektywy upload_max_filesize i post_max_size w konfiguracji PHP: moduł nie odbierze pliku, który PHP odrzuca wcześniej.
Podmiana pliku
Otwórz dokument do edycji i wskaż nowy plik. Stary plik zostaje automatycznie usunięty z serwera po udanej aktualizacji. Licznik pobrań jest zachowywany.
Jeden dokument, wiele produktów
Powiązanie dokument-produkty jest wielokrotne. Certyfikat CE obejmujący trzy indeksy przypisujesz do wszystkich trzech w jednym kroku, a dokument pojawia się w zakładce każdego z nich. Odwrotnie, produkt może mieć dowolną liczbę dokumentów.
Dokument bez żadnego powiązanego produktu pozostaje poprawny: nie pojawia się w żadnej zakładce produktu, ale jest widoczny na stronie centralnej. To właściwe zastosowanie dla karty jakości, katalogu ogólnego czy dowolnego dokumentu firmowego.
Zakładka na karcie produktu
Na karcie produktu zakładka „Dokumenty i pliki do pobrania” pojawia się obok opisu, przez natywny hook extra content PrestaShop. Żaden plik motywu nie jest nadpisywany.
Dokumenty są pogrupowane według typu, w kolejności wynikającej z pozycji typów. Każdy wiersz zawiera kolorową plakietkę rozszerzenia, tytuł, opcjonalny opis, rozmiar pliku i przycisk pobierania. Zakładkę zamyka link do strony centralnej, o ile jest ona włączona.
Jeśli produkt nie ma żadnego aktywnego dokumentu, zakładka w ogóle się nie wyświetla.
Strona centralna
Strona centralna jest serwowana pod adresem wynikającym ze slugu, na przykład /pobieranie w języku domyślnym lub /en/pobieranie w pozostałych językach, zależnie od konfiguracji wielojęzycznej sklepu.
Wyszukiwanie i filtry
Pole wyszukiwania przeszukuje jednocześnie tytuł dokumentu, jego opis, oryginalną nazwę pliku oraz nazwę i indeks powiązanych produktów. Klient, który wpisze indeks produktu, znajdzie więc odpowiednią instrukcję.
Filtry według typu wyświetlają się jako znaczniki, każdy z liczbą aktywnych dokumentów. Paginacja jest konfigurowalna w ustawieniach.
SEO
Strona jest zaprojektowana pod indeksowanie:
- meta title i meta description konfigurowane dla każdego języka,
- dyrektywa robots ustawiona na index follow,
- czysty adres kanoniczny: zachowywany jest wyłącznie numer strony, a filtry i wyszukiwanie są wykluczone, aby uniknąć duplikacji,
- okruszki nawigacji,
- blok danych strukturalnych JSON-LD typu ItemList, opisujący każdy plik jako DigitalDocument,
- linki wewnętrzne do powiązanych produktów, pod każdym dokumentem.
Pobieranie i bezpieczeństwo
Pliki nigdy nie są dostępne bezpośrednio. Zapisywane są pod zahaszowaną nazwą w folderze uploads/ modułu, zablokowanym przez plik htaccess.
Pobieranie przechodzi obowiązkowo przez kontroler front, który przed wydaniem pliku:
- sprawdza, czy dokument istnieje i jest aktywny,
- sprawdza, czy jest przypisany do bieżącego sklepu,
- zwiększa licznik pobrań,
- zwraca plik pod jego oryginalną nazwą.
Pliki PDF i obrazy otwierają się w przeglądarce, pozostałe formaty uruchamiają pobieranie. Każde nieprawidłowe żądanie jest przekierowywane na stronę 404 sklepu.
Multistore
Dokumenty są przypisywane do sklepów natywnie, przez standardowe powiązanie tabel PrestaShop. W kontekście multistore dokument utworzony w jednym sklepie pojawia się tylko w nim, a kontroler pobierania odmawia wydania pliku przypisanego do innego sklepu.
Ustawienia strony centralnej, czyli slug, meta i paginacja, również są zarządzane osobno dla każdego sklepu.
Deinstalacja
Deinstalacja usuwa tabele modułu, jego zmienne konfiguracyjne, zakładkę administracyjną oraz kasuje wszystkie pliki znajdujące się w folderze uploads/.
Wykonaj kopię zapasową plików przed deinstalacją modułu: wgranych dokumentów nie da się odzyskać po jej wykonaniu.
Rozwiązywanie problemów
Adres strony centralnej zwraca 404
Wyczyść cache w Zaawansowane, następnie Wydajność. Trasy deklarowane przez hook routingu są buforowane przez PrestaShop i uwzględniane dopiero po regeneracji.
Sprawdź również, czy przyjazne adresy URL są włączone w Ustawienia sklepu, następnie Ruch i SEO, oraz czy strona centralna jest włączona w konfiguracji modułu.
Zakładka nie pojawia się na karcie produktu
Sprawdź, czy produkt ma przypisany co najmniej jeden aktywny dokument oraz czy hook extra content jest zarejestrowany dla modułu na stronie Pozycje w panelu administracyjnym. Przy mocno zmodyfikowanym motywie upewnij się, że szablon karty produktu faktycznie wyświetla bloki extra content.
Pobieranie zwraca 404
Trzy możliwe przyczyny: dokument jest wyłączony, nie jest przypisany do bieżącego sklepu albo fizyczny plik zniknął z folderu uploads/. Otwórz dokument ponownie do edycji i wgraj plik jeszcze raz.
Wgrywanie kończy się niepowodzeniem bez jasnego komunikatu
Sprawdź uprawnienia do zapisu na modules/dfdownloadcenter/uploads/, a następnie dyrektywy PHP upload_max_filesize, post_max_size i max_file_uploads.
Zgodność techniczna
- PrestaShop 8.0 do 9.x
- PHP 7.4 do 8.3
- Używane hooki: displayProductExtraContent, moduleRoutes, displayHeader, actionObjectProductDeleteAfter
- Brak nadpisań rdzenia, brak zależności Composera
- Autouzupełnianie w czystym JavaScripcie, bez jQuery
- Multistore i wielojęzyczność: FR, EN, ES, DE, IT