PHP / Magento Dev Blog

  • Publikacje
  • O autorze
  • Kontakt

Optymalizacja wydajności – OPcache, Redis, N+1 queries, Blackfire, tabela priorytetów

  • 0
Henryk Tews
wtorek, 14 lutego 2023 / Opublikowano w Magento / Adobe Commerce

Wolny sklep to utracone przychody. Każde 100ms opóźnienia to mierzalny spadek konwersji. Optymalizacja Magento 2 to nie magia – to systematyczna diagnostyka i eliminacja wąskich gardeł. Pokazuję jak zidentyfikować co spowalnia sklep, jak mierzyć poprawę i które zmiany dają największy efekt w stosunku do nakładu pracy.

(więcej…)

MSI – Source, Stock, SSA, własny algorytm, migracja ze starego API

  • 0
Henryk Tews
wtorek, 11 października 2022 / Opublikowano w Magento / Adobe Commerce

Multi Source Inventory (MSI) to moduł wprowadzony w Magento 2.3, który całkowicie zmienia sposób zarządzania stanami magazynowymi. Zamiast jednego globalnego stanu dla każdego SKU, masz wiele źródeł (magazynów fizycznych, sklepów, dostawców) i algorytmy wyboru z którego źródła realizować zamówienie. Jeśli rozwijasz moduły Magento i jeszcze nie poznałeś MSI – ten wpis jest dla Ciebie.

(więcej…)

Własna metoda płatności – authorize/capture/refund, JS renderer, PCI DSS

  • 0
Henryk Tews
wtorek, 09 sierpnia 2022 / Opublikowano w Magento / Adobe Commerce

Implementacja własnej metody płatności w Magento 2 to jeden z trudniejszych tematów – łączy PHP, XML, JavaScript i znajomość procesu checkout. Większość tutoriali zatrzymuje się na „hello world” który pojawia się na liście metod. Pokazuję kompletną implementację: od struktury modułu, przez walidację, po integrację z zewnętrznym gateway’em płatniczym.

(więcej…)

Wzorce GoF w Magento 2 – gdzie je znaleźć i jak działają

  • 0
Henryk Tews
wtorek, 21 czerwca 2022 / Opublikowano w Magento / Adobe Commerce, Wzorce projektowe

Magento 2 to jeden z najbardziej wzorcowych (dosłownie) frameworków PHP. Jego architektura jest niemal podręcznikowym przykładem zastosowania wzorców GoF. Jeśli rozumiesz wzorce omówione w tej serii, czytanie kodu Magento staje się znacznie łatwiejsze – zamiast „skąd się to bierze” masz „aha, to Factory” albo „to Observer przez di.xml”. Pokazuję gdzie konkretnie każdy wzorzec żyje w platformie.

(więcej…)

Redis – trzy zastosowania, konfiguracja env.php, osobne instancje, monitoring

  • 0
Henryk Tews
wtorek, 11 stycznia 2022 / Opublikowano w Magento / Adobe Commerce

Redis jest de facto standardem w produkcyjnych wdrożeniach Magento 2. Zastępuje cache plikowy, obsługuje sesje i może działać jako backend Full Page Cache. Każdy z tych przypadków wymaga osobnej instancji lub bazy Redis z inną konfiguracją. Pokazuję jak to prawidłowo skonfigurować, dlaczego oddzielne instancje mają znaczenie i jak monitorować Redis w środowisku Magento.

(więcej…)

Wzorzec Proxy – lazy loading, kontrola dostępu, caching, Proxy w Magento 2

  • 0
Henryk Tews
wtorek, 10 sierpnia 2021 / Opublikowano w Magento / Adobe Commerce, Wzorce projektowe

Proxy to wzorzec który stawia pośrednika między klientem a prawdziwym obiektem. Pośrednik implementuje ten sam interfejs co oryginał, więc klient nie widzi różnicy – a Proxy może robić coś dodatkowego: opóźniać inicjalizację, kontrolować dostęp, logować wywołania lub keszować wyniki. W Magento 2 Proxy jest generowane automatycznie dla klas z ciężkimi konstruktorami.

(więcej…)

UI Components – siatka danych, DataProvider, własne kolumny, konfiguracja XML

  • 0
Henryk Tews
wtorek, 13 lipca 2021 / Opublikowano w Magento / Adobe Commerce

UI Components to jeden z bardziej zagadkowych elementów Magento 2. Siatki danych w panelu admina, formularze edycji, filtry – wszystko to jest zbudowane na UI Components. Dokumentacja Magento jest tu wyjątkowo skąpa, a debugowanie bywa frustrujące. Pokazuję jak to działa od środka i jak napisać własną siatkę danych z filtrowaniem.

(więcej…)

Cron – grupy, własne joby, harmonogram z panelu admina, debugowanie

  • 0
Henryk Tews
wtorek, 13 kwietnia 2021 / Opublikowano w Magento / Adobe Commerce

Magento 2 intensywnie korzysta z crona – indeksowanie, wysyłka emaili, czyszczenie sesji, synchronizacja kursów walut. Gdy cron przestaje działać, sklep zaczyna się sypać w nieoczywisty sposób: ceny się nie aktualizują, emaile nie wychodzą, indeksy się starzeją. Pokazuję jak działa system crona w Magento, jak pisać własne joby i jak diagnozować problemy.

(więcej…)

Varnish – VCL, cache tagging, ESI, invalidacja, DDEV setup

  • 0
Henryk Tews
wtorek, 13 października 2020 / Opublikowano w Magento / Adobe Commerce, Środowiska

Wbudowany Full Page Cache Magento przechowuje strony w plikach lub Redis. Działa, ale obsługuje requesty wewnątrz PHP – czyli nginx i PHP-FPM i tak muszą wstać do każdego żądania. Varnish działa przed nginxem i serwuje strony z pamięci bez dotykania PHP. Dla sklepu z ruchem to różnica między sekundą a milisekundami odpowiedzi.

(więcej…)

Elasticsearch w Magento 2 – indeksowanie, debugowanie zapytań, własny analyzer dla polskiego

  • 0
Henryk Tews
wtorek, 11 sierpnia 2020 / Opublikowano w Magento / Adobe Commerce

Od Magento 2.4 Elasticsearch jest jedynym wspieranym silnikiem wyszukiwania – MySQL Search został usunięty. Dla wielu sklepów to po prostu „działa”, ale gdy klient zgłasza że „wyszukiwarka nie znajduje właściwych produktów”, zaczyna się prawdziwa praca. Pokazuję jak Magento indeksuje dane w ES, jak debugować zapytania i jak rozszerzyć indeks o własne pola.

(więcej…)

  • 4
  • 5
  • 6
  • 7
  • Publikacje
  • O autorze
  • Kontakt

© 2026 Created by

GÓRA
Zarządzaj zgodą
Aby zapewnić jak najlepsze wrażenia, korzystamy z technologii, takich jak pliki cookie, do przechowywania i/lub uzyskiwania dostępu do informacji o urządzeniu. Zgoda na te technologie pozwoli nam przetwarzać dane, takie jak zachowanie podczas przeglądania lub unikalne identyfikatory na tej stronie. Brak wyrażenia zgody lub wycofanie zgody może niekorzystnie wpłynąć na niektóre cechy i funkcje.
Funkcjonalne Zawsze aktywne
Przechowywanie lub dostęp do danych technicznych jest ściśle konieczny do uzasadnionego celu umożliwienia korzystania z konkretnej usługi wyraźnie żądanej przez subskrybenta lub użytkownika, lub wyłącznie w celu przeprowadzenia transmisji komunikatu przez sieć łączności elektronicznej.
Preferencje
Przechowywanie lub dostęp techniczny jest niezbędny do uzasadnionego celu przechowywania preferencji, o które nie prosi subskrybent lub użytkownik.
Statystyka
Przechowywanie techniczne lub dostęp, który jest używany wyłącznie do celów statystycznych. Przechowywanie techniczne lub dostęp, który jest używany wyłącznie do anonimowych celów statystycznych. Bez wezwania do sądu, dobrowolnego podporządkowania się dostawcy usług internetowych lub dodatkowych zapisów od strony trzeciej, informacje przechowywane lub pobierane wyłącznie w tym celu zwykle nie mogą być wykorzystywane do identyfikacji użytkownika.
Marketing
Przechowywanie lub dostęp techniczny jest wymagany do tworzenia profili użytkowników w celu wysyłania reklam lub śledzenia użytkownika na stronie internetowej lub na kilku stronach internetowych w podobnych celach marketingowych.
  • Zarządzaj opcjami
  • Zarządzaj serwisami
  • Zarządzaj {vendor_count} dostawcami
  • Przeczytaj więcej o tych celach
Zobacz preferencje
  • {title}
  • {title}
  • {title}