PHP / Magento Dev Blog

  • Publikacje
  • O autorze
  • Kontakt

Magento 2 emaile transakcyjne nie są wysyłane – konfiguracja SMTP

  • 0
Henryk Tews
piątek, 26 czerwca 2026 / Opublikowano w Magento / Adobe Commerce

Klienci nie dostawali potwierdzeń zamówień. Sklep wysyłał emaile z lokalnego sendmail który był blokowany przez serwery pocztowe jako spam. 95% emaili trafiało do folderu Spam lub było odrzucanych. Czas naprawy: 2 godziny.

(więcej…)

Magento 2 atak botów na panel admin – brute force i ochrona

  • 0
Henryk Tews
środa, 24 czerwca 2026 / Opublikowano w Magento / Adobe Commerce

Serwer przeciążony, logi nginx pełne requestów do /admin. Boty próbowały się zalogować do panelu admina przez 72 godziny – 50 000 prób. Jeden z kont admin miał słabe hasło. Czas reakcji: 30 minut, wzmocnienie: 2 godziny.

(więcej…)

Custom Payment Method w Magento 2 – authorize, capture, refund, webhook

  • 0
Henryk Tews
środa, 24 czerwca 2026 / Opublikowano w Magento / Adobe Commerce

Własna metoda płatności w Magento 2 to jeden z bardziej złożonych modułów do napisania od zera. Wymaga implementacji interfejsu MethodInterface, konfiguracji w system.xml, szablonów JS dla checkout i obsługi webhooków zwrotnych od bramki. Pokażę kompletną strukturę modułu integrującego fikcyjną bramkę płatności – od autoryzacji przez capture po obsługę refundacji.

(więcej…)

Magento 2 reindeksowanie trwa godzinami – deadlock MySQL i brakujące indeksy

  • 0
Henryk Tews
niedziela, 21 czerwca 2026 / Opublikowano w Magento / Adobe Commerce

Sklep z 50 000 produktów – pełny reindeks trwał 6 godzin i często kończył się błędem deadlock. Ceny i dostępność produktów aktualizowały się z opóźnieniem. Czas naprawy: 1 dzień.

(więcej…)

Migracja Magento 1 do Magento 2 – utrata danych SEO i przekierowania 301

  • 0
Henryk Tews
piątek, 19 czerwca 2026 / Opublikowano w Magento / Adobe Commerce

Sklep po migracji z Magento 1 do Magento 2 stracił 60% organicznego ruchu w ciągu 2 tygodni. Ahrefs pokazał 4000 błędów 404. Stare URL-e produktów i kategorii nie były przekierowywane. Czas naprawy: 3 dni.

(więcej…)

Magento 2 checkout – Place Order nie działa, koszyk się resetuje

  • 0
Henryk Tews
środa, 17 czerwca 2026 / Opublikowano w Magento / Adobe Commerce

Klienci zgłaszali że nie mogą złożyć zamówienia – po kliknięciu „Złóż zamówienie” strona się przeładowuje i koszyk jest pusty. Zamówienie nie trafia do systemu. Problem dotyczył tylko płatności kartą, przelew działał. Czas realizacji: 4 godziny.

(więcej…)

Magento 2 wolno się ładuje – problem N+1 i kolekcje bez limitu

  • 0
Henryk Tews
niedziela, 14 czerwca 2026 / Opublikowano w Magento / Adobe Commerce

Strona kategorii ładowała się 18 sekund przy 200 produktach. PageSpeed score: 12/100. Problem nie był w serwerze ani Varnishu – był w kodzie modułu który dla każdego produktu wykonywał osobne zapytanie SQL.

(więcej…)

Magento 2 błąd 500 po aktualizacji – vendor/autoload i konflikty zależności

  • 0
Henryk Tews
piątek, 12 czerwca 2026 / Opublikowano w Magento / Adobe Commerce

Sklep przestał działać natychmiast po uruchomieniu composer update. Biała strona lub błąd 500 na froncie i adminie, logi pełne błędów PHP Fatal Error. Czas realizacji: 2 godziny.

(więcej…)

MSI – Multi Source Inventory: algorytm doboru źródeł, własny SSA

  • 0
Henryk Tews
sobota, 30 maja 2026 / Opublikowano w Magento / Adobe Commerce

Multi Source Inventory (MSI) to jeden z największych refaktoringów w historii Magento 2 – wprowadzony w wersji 2.3. Zamiast jednego globalnego stanu magazynowego, produkty mogą mieć stany w wielu źródłach (magazyny, sklepy stacjonarne, dropshipping). Algorytm doboru źródeł (Source Selection Algorithm) decyduje skąd realizować zamówienie. Pokażę architekturę MSI, jak działa domyślny algorytm i jak napisać własny.

(więcej…)

Magento 2.4.9 – oficjalne wsparcie PHP 8.5, co się zmieniło i jak migrować

  • 0
Henryk Tews
poniedziałek, 04 maja 2026 / Opublikowano w Magento / Adobe Commerce, PHP

Magento 2.4.9 wyszło z oficjalnym wsparciem PHP 8.5. Przez ostatnie miesiące testowałem RC na projektach klientów – teraz jest stable i można planować migracje. Pipe operator, readonly dziedziczenie, nowe array functions – wszystkie PHP 8.5 features są teraz pierwszoklasowymi obywatelami w kodzie modułów Magento. Przeglądam co się faktycznie zmieniło w rdzeniu, co trzeba zaktualizować w własnym kodzie i jak wygląda ścieżka upgrade dla istniejących projektów.

(więcej…)

  • 1
  • 2
  • 3
  • 4
  • 5
  • 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}