Rozmawiałem ostatnio wieczorem z koleżanką. Może nawet to już nie wieczór, bo jak kończyliśmy, to zbliżała się 22, ale to raczej bez znaczenia. Istotne, że na koniec, na moje „dobranoc”, koleżanka rzuciła, że ona jeszcze spać nie może, bo o północy musi zmienić cenę w sklepie, bo akurat kończy się promocja. Trochę mnie to zaskoczyło, bo w WooCommerce – a na tej wtyczce działał sklep – akurat opcja wyłączenia (i włączenia) promocji w określonym dniu jest, i choć nie ma możliwości wybrania godziny, to dotyczy to właśnie północy, a więc idealnie dla koleżanki. Przynajmniej potencjalnie, bo w jej przypadku kwestia była bardziej złożona…

Automatyczna zmiana ceny w czasie w WooCommerce

Jak mi wyjaśniła, faktycznie na produkt ustalona jest cena promocyjna, która ma się zmienić o północy, ale zmiana ma polegać nie tyle na wyłączeniu promocji i powrotu do ceny regularnej, co ustawieniu nowej ceny promocyjnej. A tego faktycznie WooCommerce w standardzie nie potrafi.

Teoretycznie mogłem pokusić się o próbę napisania dla niej jakiegoś kodu, który by takiej modyfikacji dokonał, ale nie dość, że było już dość późno, ja od dawna miałem wyłączony komputer i kilka chłodnych na koncie, to nie było też za bardzo czasu na testy, a w końcu to sklep internetowy, więc…

Ale uznałem, że skoro ona ma taką potrzebę (taki problem), to pewnie wcześniej ktoś inny też miał taką potrzebę, i ktoś inny pewnie przygotował do tego odpowiednią wtyczkę. I oczywiście faktycznie tak było (i nadal jest ;-)).

Change Prices with Time for WooCommerce (Igor Benić)

Wtyczka, z której zaproponowałem skorzystać koleżance to Change Prices with Time for WooCommerce, która w wersji bezpłatnej nie tylko powinna rozwiązać jej problem, ale też jej obsługa jest banalna.

W ustawieniach produktu w WooCommerce w zakładce „ustawienia ogólne” dochodzą nowe opcje, gdzie wybieramy datę i godzinę, oraz cenę, jaka ma obowiązywać dla produktu. Kroków możemy dać (chyba) tyle, ile chcemy, ważne by ostatni krok to była już cena ostateczna.

Oprócz tego mamy jeszcze 2 opcje, czyli:

  • Change the Sale Price – czy zmiana ma dotyczyć ceny regularnej, czy promocyjnej (gdy zaznaczone)
  • New Layout – alternatywny wygląd, gdzie zamiast całkiem sporego licznika mamy bardziej elegancji pasek z odliczaniem, oraz podaną ceną, jaka będzie, gdy odliczanie się zakończy (przykład na zrzucie poniżej)

Z tego co mówiła koleżanka, i z tego co później sam widziałem podczas testów, wtyczka działa sprawnie, choć ma pewne ograniczenia/minusy. Część wynika z filozofii działania, część z tego, że jest wersja płatna, i ona ma te opcja, a część z prawdopodobnie błędów podczas jej tworzenia.

  • Brak tzw. „zera wiodącego”, czyli w przypadku gdy sekundy czy minuty (godziny niby też, ale to aż tak nie straszy) zejdą poniżej 10, to cyfry wyświetlają się bez zera na początku, przez co mamy takie potworki jak 13:1 zamiast 13:01
  • Brak tłumaczeń, co ma znaczenie gdy nie korzystamy z „new layout”, bo choć te można łatwo samemu zrobić, bo odpowiedni plik „pot” znajduje się w katalogu wtyczki, to nie ma tam opcji tłumaczenia etykiet dla jednostek czasu (np. hours, minutes)
  • Obsługa tylko prostych produktów, przynajmniej w  wersji bezpłatnej wtyczki, więc np. produktów z wariantami w ten sposób nie ustawimy, chyba że zainwestujemy w wersję płatną (~36 $ rocznie, lub jednorazowo ~120)

Pewnym minusem, może być też brak aktualizacji ceny dla produktów dodanych do koszyka. Ale tego elementu celowo nie wpisałem na powyższą listę, bo można się tu zastanawiać, czy w takim przypadku aktualizacja ceny powinna mieć miejsce.

W końcu klient do koszyka włożył towar w konkretnej cenie, i raczej nie powinno się jej zmieniać na dalszym etapie, bo to może być odebrane – chyba zresztą słusznie – jako działanie w pewnym sensie nieuczciwe. Choć ja w takim przypadku raczej wybrałbym komunikat dla użytkownika, ze produkt, który ma w koszyku, zmienił cenę, i jak chce, to może go nadal kupić, ale już w nowej cenie.

Może to nie wszystkie zalety i wady, ale z wtyki korzystałem tylko chwilę, głównie na potrzeby kilku testów na potrzeby tego artykułu. Ale – co ma chyba większe znaczenie – jak pytałem się dziś koleżanki co myśli o tej wtyczce, to stwierdziła, że „jest OK”, i nadal zamierza z niej korzystać…

(!) Zgłoś błąd na stronie