Wdrożenie Omnibusa w sklepie na WooCommerce (kurs)

Kilka dni temu ukazała się wtyczka WooCommcerce w wersji 6.5, i pewnie bym to przeminął, bo nie licząc rzeczy “dla programistów”, to większość zmian niczym w WordPressie od dawna, dotyczy Gutenberga, czyli edytora blokowego, z którego po prostu nie korzystam. Chyba że muszę… Ale tym razem pojawiła się nowość, która nie tylko nie dotyczy Gutenberga, ale też zdaje się mieć sens. Choć na podstawie informacji do znajomych i/lub klientów (bo często jedno nie wyklucza drugiego ;-)) wiem, że powoduje też lekkie zamieszanie…

Zatwierdzone katalogi (lokalizacje) pobierania w WooCommerce

W standardowej sytuacji WordPress pliki dodawane przez swój mechanizm obsługi mediów (ale i niektórych plików, takich jak np. PDFy) zapisuje w katalogu “uploads”, znajdującym się w katalogu “wp-content”. W przypadku gdy dodajemy plik do pobrania w WooCommerce z okna edycji produktu, jest on zapisywany w standardzie w katalogu “woocommerce_uploads”, który znajduje się w katalogu “uploads”, znajdującym się w katalogu “wp-content”, np.:

https://sklep.webinsider.pl/wp-content/uploads/2022/05/sample.pdf
https://sklep.webinsider.pl/wp-content/uploads/woocommerce_uploads/2022/05/sample.pdf

Do WooCommerce 6.5 właściwie była pełna dowolność, bo podczas edycji produktu jako adres pliku do pobrania właściwie można było podać dowolny adres URL, również wskazujący na lokalizacje poza sklepem. Co ma sens, bo często w przypadku produktów do pobrania korzystamy z dodatkowych lokalizacji, by hostować tam pliki do pobrania, takich jak np. dyski sieciowe, czy usługi typu S3.

Jednak w przypadku, gdy sklep obsługuje więcej osób, zawsze może się zdarzyć, że ktoś mniej lub bardziej celowo skorzysta z jakiejś zewnętrznej lokalizacji, nad którą administrator sklepu nie ma pełnej kontroli, a tym samym nie ma pewności, że nikt w między nie zmodyfikował pliku.

I tutaj z pomocą przychodzi właśnie nowa opcja, czyli “zatwierdzone katalogi pobierania” (Approved Download Directories), za pomocą której administrator może wskazać miejsca (adresy), skąd mogą być pobierane pliki (WooCommerce -> Ustawienia -> Produkty -> Approved Download Directories (w przyszłości najpewniej “zatwierdzone katalogi pobierania”)):

Można wskazać wiele dozwolonych lokalizacji, zarówno lokalnych, jak i zdalnych, zarówno korzystając z adresu URL, jak i ścieżki (fille://). Następnie wystarczy kliknąć “start enforcing rules” (w przyszłości zostanie to najpewniej przetłumaczone na coś w stylu “zacznij stosować reguły”).

Od tego momentu, podczas dodawania plików w produktach do pobrania, gdy ktoś wskaże ścieżkę, która nie jest dozwolona, pojawi się odpowiednia informacja:

Odpowiedni komunikat pojawi się również podczas zapisywania produktu, tak by osoba edytująca produkt wiedziała, że została podana lokalizacja pliku do pobrania spoza dozwolonych lokalizacji.

Synchronizuj zatwierdzone katalogi pobierania

Gdy zaczynamy przygodę ze sklepem, lub korzystamy tylko i wyłączenie ze standardowej lokalizacji dla plików w WooCommerce, i chcemy korzystać z tej ochrony, to najpewniej wystarczy przejść do ustawień i ją włączyć. Wszystko powinno działać na standardowych ustawieniach, które są wstępnie skonfigurowane pod standardowy katalog pobierania w WooCommerce.

Sytuacja trochę się komplikuje, gdy sklep ma produktów tego typu (do pobrania) więcej i są wykorzystywane różne lokalizacje, również zewnętrzne. W takiej sytuacji ręczna konfiguracja mogłaby potencjalnie wymagać ustawienia wielu różnych adresów. I choć jest to sytuacja mało prawdopodobna, to jednak może się zdarzyć, że ktoś nie do końca wie/pamięta, z jakich lokalizacji są pobierane wszystkie pliki we wszystkich produktach.

Tutaj z pomocą przychodzi opcja “synchronize approved download directories” (w przyszłości pewnie będzie to coś w stylu “synchronizuj zatwierdzone katalogi pobierania”), która znajdziemy w narzędziach (WooCommerce -> Status -> Narzędzia: Synchronize approved download directories), a spowoduje przeskanowanie wszystkich produktów “do pobrania” w sklepie w poszukiwaniu lokalizacji, z jakich udostępniane są pliki. Chwile to trwa,  działa dość dobrze, choć na koniec warto i tak przejrzeć listę.

A jest to o tyle istotne, że przy aktywnej opcji “zatwierdzone katalogi pobierania”, nie tylko obsługa sklepu nie będzie mogła dodać pliku spoza wyznaczonych lokalizacji, ale również klient sklepu, nie będzie mógł pobrać plików z takich niezatwierdzonych lokalizacji. Również tych, które zostały dodane/zakupione wcześniej.

Co warto (jeszcze) wiedzieć o zatwierdzone katalogach pobierania

Na koniec jeszcze garść informacji i wskazówek, jakie sam już zaobserwowałem, i jakie znalazłem w dokumentacji tej nowej funkcji.

Katalogi (lokalizacje) może dodawać i edytować, a samą opcję włączać i wyłączać tylko użytkownik z uprawnieniami (rolą) administratora. Można je dowolnie dodawać, edytować, usuwać, oraz włączać i wyłączać. Liczy się schemat/protoków, czyli http://… to nie to samo co https://… (SSL), ale w ramach dodanej ścieżki można korzystać z podkatalogów.

Opcja ma wpływ tylko na pliki do pobrania w produktach WooCommerce, więc nie dotyczy innych plików, takich jak np. pliki dodawane za pomocą biblioteki mediów WordPressa.

(!) Zgłoś błąd na stronie | Lub postaw nam kawę :-)
LUTy dla D-Cinelike (DJI Mini 3 Pro, DJI Avata, OSMO Pocket) od MiniFly
Wdrożenie Omnibusa w sklepie na WooCommerce
Jak (legalnie) latać dronem w Kategorii Otwartej
Wdrożenie Omnibusa w sklepie na WooCommerce (kurs)
Patryk
Wdrożenie Omnibusa w sklepie na WooCommerce (kurs)