PHP / Magento Dev Blog

  • Publikacje
  • O autorze
  • Kontakt

REST API security – tokeny, ACL, rate limiting nginx, monitoring podejrzanych requestów

  • 0
Henryk Tews
wtorek, 19 marca 2024 / Opublikowano w Magento / Adobe Commerce

Magento 2 REST API to potężne narzędzie – i potencjalny wektor ataku jeśli jest źle skonfigurowane. Domyślnie wiele endpointów jest dostępnych publicznie lub wymaga jedynie tokenu klienta który można wyprowadzić z frontendowej aplikacji. Pokazuję jak prawidłowo zabezpieczyć API: tokeny OAuth, rate limiting, ACL i monitoring podejrzanych requestów.

(więcej…)

Hyvä Theme – architektura, Alpine.js, Tailwind, szablony PHTML, eventy

  • 0
Henryk Tews
poniedziałek, 22 stycznia 2024 / Opublikowano w Magento / Adobe Commerce

Luma – domyślny motyw Magento 2 – ma poważny problem z wydajnością. Dziesiątki plików JS, jQuery, RequireJS, knockout.js i plik CSS liczący setki KB. Hyvä (wymawiane „hiuva”, po fińsku „dobry”) to alternatywny motyw który wyrzuca ten stack i zastępuje go Alpine.js i Tailwind CSS. Wyniki PageSpeed skaczą z 30-40 do 90+. Pokazuję architekturę i jak zacząć.

(więcej…)

Checkout customization – własne pola, mixin JS, krok do procesu, zapis do Order

  • 0
Henryk Tews
wtorek, 12 grudnia 2023 / Opublikowano w Magento / Adobe Commerce

Checkout w Magento 2 to jeden z najtrudniejszych obszarów do customizacji – głęboko zagnieżdżony JSON konfiguracji knockout.js, wielowarstwowe mixiny JavaScript i kilkanaście kroków przetwarzania po stronie PHP. Pokazuję jak dodać własne pole do formularza checkout, własną walidację i jak zmodyfikować kroki procesu bez rozbijania istniejącej funkcjonalności.

(więcej…)

PageBuilder – własny typ zawartości, XML config

  • 0
Henryk Tews
wtorek, 11 lipca 2023 / Opublikowano w Magento / Adobe Commerce

PageBuilder to wizualny edytor stron wbudowany w Magento 2.3.1+. Klienci go kochają – przeciągają bloki, edytują treści bez HTML. Developerzy mają mieszane uczucia – architektura jest złożona, debugowanie nieintuicyjne. Pokazuję jak dodać własny typ zawartości od zera, jak rozszerzyć istniejące typy i czego unikać przy wdrożeniu.

(więcej…)

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…)

  • 4
  • 5
  • 6
  • 7
  • 8
  • 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}