Jedna z największych aktualizacji w historii PrestaShop – kolejna, tak można napisać o nadchodzącej wersji 1.7.7. Francuski team nadal pracuje nad przepisaniem całego back-office do Symfony, które zostało wybrane na bazę panelu administracyjnego.

Co znajdziemy w najnowszej wersji PrestaShop? Przejdźmy przez wszystkie najciekawsze zmiany.

Nowa strona zarządzania zamówieniami

Jednym z ostatnich etapów przepisywania back-office na silnik Symfony była migracja strony zarządzania zamówieniami, główną zmianą w nowej wersji jest właśnie ona.
Poza odświeżonym wyglądem dostaliśmy kilka użytecznych zmian, np. możemy teraz szybko podejrzeć wybrane zamówienie bezpośrednio z poziomu listy, albo edytować niektóre elementy zamówienia, nie opuszczając strony (dynamicznie za pomocą wyskakującego okna modal).


Fuzzy Search

To zmiana, które raczej nikt się nie spodziewał, a powstała dzięki zaangażowaniu jednego z użytkowników PrestaShop. Fuzzy Search to tłumacząc prosto: wyszukiwarka, która poprawia za nas literówki. Za pomocą algorytmów wyszukiwarka szuka dopasowania na bazie wpisanej frazy, dzięki temu wpisując np. cushon z powodzeniem wyszukamy cushion.

Wyszukiwarka z tym mechanizmem zostaje wprowadzona do wersji 1.7.7 mimo, że jest nadal w fazie beta, wszelkie sugestie na temat jej działania powinny być zgłaszane tutaj.

Zarządzanie walutami

W PrestaShop 1.7 nastąpiły duże zmiany jeżeli chodzi o pobieranie wszelakich informacji o walutach, ich formacie, kodach ISO, symbolach, pozycji symbolu itd. Dotychczas nie mogliśmy zmienić ustawień waluty, musieliśmy pogodzić się z domyślnym ich formate, a także nie mogliśmy zmienić sposobu wyświetlania cen, np. tak by nie pokazywało groszy. Od teraz mamy taką możliwość.


Nowe rzeczy, zmiany, poprawki, usprawnienia…

Wersja 1.7.7 posiada ogromny changelog, nie będę rozpisywał się na temat wszystkich zmian w tym silniku, napiszę tyle: jest dobrze. Wersja 1.7 jest co raz bardziej stabilna, a dzięki zmianom z najnowszego wydania zbliżamy się do momentu, w którym liczba osób “użyj wersji 1.6, 1.7 jest pełna błędów!” drastycznie zmaleje.

Poniżej wymienię listę innych zmian, bugfixów czy usprawnień, które możemy zobaczyć w nowej wersji, a są wg mnie godne uwagi.

  • kompatybilność z PHP 7.3
  • migracja strony Klienci -> Adresy
  • migracja strony Katalog -> Monitorowanie
  • migracja stron Obsługi klienta
  • migracja stron związanych z ustawieniami walut i podatków
  • migracja strony Katalog -> Pliki
  • migracja strony Katalog -> Atrybuty
  • migracja strony Katalog -> Dostawcy
  • ostatni element w okruszkach nareszcie nie będzie już linkował do samego siebie!
  • okruszki pojawią się także na stronach “Moje konto”, “Producenci” i innych stronach frontu, wcześniej ich brakowało i w wielu projektach trzeba było je dodawać samemu
  • część żądań do API została przepisana tak by korzystać z Circuit Breaker, powinno to poprawić stabilność back-office w sytuacji gdy serwery PrestaShop są niedostępne jest to jednak nadal “work in progress”
  • bardzo dużo nowych możliwości w komponencie “Grid” służącego do tworzenia list elementów na nowych stronach back-office w wersji 1.7, więcej o tym w osobnym artykule
  • poprawki działania serwerów mediów, znanych z wersji 1.6, na wersji 1.7 niektóre elementy CSS, JS i obrazki nie były poprawnie ładowane używając ich, zostało to poprawione w wersji 1.7.7
  • poprawka, która uniemożliwia naciskanie przycisku potwierdzającego zamówienie więcej niż jeden raz, czasami powodowało to problemy z przetwarzaniem zamówienia
  • nowy hook displayFooterCategory
  • użycie utf8mb4 w bazie danych! możemy używać emoji! 👍

Pełen dziennik zmian znajduje się tutaj: https://github.com/PrestaShop/PrestaShop/blob/4514f7e7ddd46737de6a4ffb7319f3018ba3ef72/docs/CHANGELOG.txt

Nie sposób wymienić w tym artykule wszystkiego dobrego co przynosi ta wersja, liczba zmian jest ogromna, PrestaShop zyskała na stabilności, a programiści wiele ciekawych rozwiązań jak np.

  • nowe hooki
  • implementacja auto-wiring dla kontrolerów Symfony w back-office, pozwoli to traktować je jako serwisy, a co za tym idzie dekorować
  • wiele nowych możliwości komponentu Grid, https://devdocs.prestashop.com/1.7/development/components/grid/
  • możliwość ustalania pozycji pól w hookAdditionalCustomerFormFields AddressFormFields
  • możemy nadpisywać zmienne na froncie używając actionFrontControllerSetVariables (https://github.com/PrestaShop/PrestaShop/pull/14049)
  • ułatwienia dotyczące rozszerzania procesu zakupowego

Kiedy wersja 1.7.7 ujrzy światło dzienne?

W ciągu kilku dni ukaże się beta-1, jest to czas gdy sam kod projektu jest zamrożony, a team skupia się na łataniu znalezionych błędów, to też czas, w którym agencje, freelancerzy i wszyscy ci, którym zależy na stabilności oprogramowania powinni pomóc i testować nową wersję.

Szacuje się, że wersja ostateczna 1.7.7 ukaże się w ciągu 6-8 tygodni.

Obecną paczkę z najnowszą wersją PrestaShop 1.7 można pobrać tutaj: https://storage.googleapis.com/prestashop-core-nightly/2020-04-29-1.7.7.x-prestashop_1.7.7.0.zip

O całym cyklu wydawniczym PrestaShop można natomiast przeczytać tutaj: https://build.prestashop.com/news/ps17-minor-release-lifecycle/

PrestaShop 1.7.8? Co dalej?

Oczywiście wydanie wersji 1.7.7 to jedno, ale twórcy oprogramowania już mają plan na to co ma dziać się w wersji 1.7.8. Głównym zadaniem dla teamu będzie przepisanie zakładki zarządzania katalogiem produktów i samym produktem. Jest to jedna z pierwszych “nowych” zakładek z wersji 1.7 PrestaShop i w stosunku do innych, przenoszonych ostatnio, jest przestarzała i posiada wiele wyborów architektonicznych, które nie są zgodne z obecnymi.

Informacja o wydaniu bety 1.7.7 zostanie opublikowana na blogu PrestaShop tutaj: https://build.prestashop.com/