Migracja WordPress do Astro i Next.js

Migracja WordPress do Astro i Next.js

5.00/5 - (17 głosów)
7 min czytania
Przewodnik

Przenoszę publiczną część stron na WordPressie do Astro albo Next.js. WordPress zostaje panelem, w którym redakcja pisze i publikuje, a nowy frontend pobiera z niego treść. Zanim zaproponuję migrację, mierzę, co naprawdę spowalnia stronę. Czasem wystarczy poprawić cache albo obrazy i wtedy to piszę zamiast sprzedawać przebudowę.

#Kto realizuje migrację WordPress do Astro i Next.js?

Mariusz Szatkowski, programista WordPress od 2006 roku, z Gdyni. Pracuję sam: audyt, kod, przekierowania i wdrożenie robię osobiście, bez zespołu i podwykonawców. Ta strona, wppoland.com, działa na Astro i Cloudflare Pages.

#Co obejmuje migracja WordPress do Astro i Next.js?

Przeniesienie warstwy publicznej na Astro albo Next.js, odtworzenie szablonów i komponentów, pobieranie treści z WordPressa przez REST API albo WPGraphQL, przeniesienie formularzy i integracji oraz mapę przekierowań ze starych adresów. Panel redakcyjny, role i proces publikacji zostają w WordPressie, chyba że ustalę inaczej. Projekt graficzny i układ widoków dostarczasz ty, ja je wdrażam.

#Gdzie realizuję projekty migracji WordPress?

Zdalnie, dla firm w Polsce i w innych krajach UE. Rozmawiam mailowo, w dokumentach i w repozytorium, więc każda decyzja zostaje zapisana. Umowa B2B, faktura z numerem VAT UE PL7393037445.

#Ile kosztuje migracja WordPress do Astro lub Next.js?

Wyceniam indywidualnie, po audycie. Cena zależy od liczby szablonów, objętości treści, integracji i języków. Wyślij krótki opis projektu, a dostaniesz pisemną ofertę z założeniami.

#Kiedy migracja ma sens, a kiedy nie

Wąskim gardłem rzadko jest sam WordPress. Częściej to konkretna warstwa: zapytania, które wtyczka wykonuje przy każdym żądaniu, cache pomijający zalogowanych, obrazy w oryginalnym rozmiarze albo motyw ładujący kilkanaście plików CSS i JS. Każdą z tych przyczyn da się zmierzyć osobno, a część naprawić bez wymiany frontendu. Dlatego audyt najpierw wskazuje warstwę, a dopiero potem framework.

Migracja frontendu ma sens, gdy problem leży w samym motywie i sposobie renderowania, gdy chcesz trzymać szablony w repozytorium i publikować przez build, albo gdy ta sama treść ma trafiać także do innych kanałów przez API. Nie ma sensu, gdy strona żyje z wtyczek generujących front (kreatory stron, rozbudowane sklepy na WooCommerce z dziesiątkami rozszerzeń), bo każdą z tych funkcji trzeba by napisać od nowa.

Oddzielenie frontendu zmienia też powierzchnię ataku. Publiczny ruch nie trafia już do PHP, ale instalacja WordPressa, wtyczki, konta i API dalej wymagają aktualizacji, kontroli dostępu, kopii zapasowych i monitoringu. Architektura headless nie chroni przed przejęciem zaplecza ani przed podatną integracją.

#Astro czy Next.js?

Oba frameworki obsługują generowanie statyczne i renderowanie na serwerze, różnią się punktem wyjścia. Szerzej opisuję to w porównaniu Astro 5 i Next.js 15 na 2026, razem z kosztem utrzymania i dostępnością programistów.

AstroNext.js
Modelstrony wielostronicowe, plik src/pages/index.astro to strona głównaaplikacja Reacta z App Routerem (app/)
JavaScript w przeglądarcedomyślnie brak; komponent staje się interaktywną wyspą dopiero z dyrektywą client:load, client:idle lub client:visiblekomponenty klienckie oznaczone 'use client'
Renderowaniedomyślnie output: 'static'; pojedyncza strona na żądanie przez export const prerender = false i adapterprerender, renderowanie dynamiczne, ISR przez export const revalidate
Odświeżanie treści z CMSnowy build albo strony renderowane na żądanierevalidatePath, revalidateTag, podgląd szkiców przez draftMode()
Typowy hostingadaptery @astrojs/cloudflare, @astrojs/netlify, @astrojs/node, @astrojs/vercel; statyczny build na dowolnym serwerzeserwer Node.js, kontener Docker albo eksport statyczny (output: 'export') bez ISR i bez Proxy
Pasuje dostron firmowych, blogów, dokumentacjiaplikacji z logowaniem, panelami klienta, danymi zmieniającymi się przy każdym żądaniu

Astro nie jest frameworkiem Reacta. Komponenty Reacta można w nim używać przez integrację @astrojs/react, a na stronę trafiają jako HTML albo jako wyspy z dyrektywą client:*. Do tego dochodzą wyspy serwerowe: komponent Astro z dyrektywą server:defer renderuje się osobno, a reszta strony nie czeka na niego.

#Co dostajesz po migracji

  • Audyt wyjściowy. Lista reprezentatywnych adresów, pomiar LCP, INP, CLS i TTFB przed zmianą oraz wskazanie warstwy, która odpowiada za problem.
  • Frontend w repozytorium. Szablony i komponenty w Astro albo Next.js pod kontrolą wersji, publikacja przez build, podgląd przed wypuszczeniem.
  • Redakcja zostaje w WordPressie. Te same konta, role i proces publikacji. Treść pobierana z /wp-json/wp/v2/ albo przez WPGraphQL.
  • Formularze, integracje i przekierowania. Przeniesione i opisane, z listą adresów do sprawdzenia po wdrożeniu.
  • Raport przed i po. Te same adresy, te same warunki testu, obie daty pomiaru i dane z ruchu użytkowników, jeśli je masz. Na tej podstawie oceniam, czy cel z oferty został osiągnięty.

#Jak wygląda proces migracji?

  1. Audyt. Mierzę stronę, spisuję treści, typy wpisów, pola ACF, formularze, integracje z CRM i analityką. Sprawdzam, które wtyczki generują coś na froncie.
  2. Decyzja i oferta. Wybór frameworka z uzasadnieniem, zakres, założenia i termin na piśmie, zanim powstanie kod.
  3. WordPress jako API. Porządkuję zaplecze, ograniczam dostęp do panelu i sprawdzam, co zwraca REST API. WPGraphQL instaluję tylko wtedy, gdy struktura treści tego wymaga.
  4. Nowy frontend. Szablony według twojego projektu graficznego, w repozytorium Git, z wersją podglądową, na której akceptujesz zmiany.
  5. Przełączenie. Stara strona działa do momentu zmiany DNS. Jeśli po przełączeniu coś jest nie tak, powrót oznacza skierowanie domeny z powrotem na starą wersję. WordPress przestaje być widoczny publicznie i służy tylko redakcji.

#Polskie znaki w adresach i mapa przekierowań

WordPress tworzy slugi funkcją sanitize_title(), która przez remove_accents() zamienia polskie litery na łacińskie: tytuł “Łódź” daje slug lodz, a “sprzedaż” daje sprzedaz. Nowy frontend musi budować dokładnie te same adresy, inaczej każdy wpis dostanie nowy URL i będzie potrzebował przekierowania. W Astro slug pochodzi z danych WordPressa, a nie z nazwy pliku, więc pobieram pole slug z API zamiast generować go od nowa. Dopiero adresy, które świadomie zmieniamy (archiwa dat, strony załączników, parametry ?p=), trafiają do mapy 301.

Metadane SEO przenoszę razem z treścią: tytuły, opisy, dane strukturalne, adresy kanoniczne i hreflang przy stronach wielojęzycznych. Przed przełączeniem porównuję crawl starej i nowej wersji, a po nim raporty w Google Search Console.

#Masz już frontend w Next.js i chcesz przejść na Astro?

Oficjalny przewodnik Astro dla projektów z Next.js opisuje, co się zmienia:

  • katalog pages/ przechodzi do src/pages/, routing nadal opiera się na plikach;
  • app/layout.jsx i head.jsx łączą się w jeden Layout.astro, a {children} zastępuje <slot />;
  • getStaticProps() znika, dane pobierasz w nagłówku komponentu przez fetch(), import.meta.glob() albo getCollection();
  • <Image /> z Next.js zastępuje <Image /> z astro:assets, a w plikach .jsx zostaje zwykły <img> bez optymalizacji;
  • <Link> zamienia się w <a href="">, a className w class.

Komponenty Reacta mogą zostać dzięki @astrojs/react. Przewodnik zaznacza też, że Astro jest nastawione na treść, więc rozbudowane panele aplikacyjne wymagają więcej pracy niż w Next.js.

#Typowe scenariusze

Strona treściowa. Blog, strona firmowa, baza wiedzy. Wpisy zmieniają się rzadko, a są czytane często, więc generowanie statyczne w Astro jest tu naturalnym wyborem. Do ustalenia zostaje, co uruchamia nowy build po publikacji.

Sklep na WooCommerce. Katalog, koszyk, płatności i konta klientów to logika, którą w układzie headless trzeba odtworzyć na froncie. Przy sklepie z wieloma rozszerzeniami częściej polecam zostać przy klasycznym motywie i poprawić jego wydajność.

Aplikacja z logowaniem. Panele klienta i dane zależne od użytkownika to obszar Next.js: strony publiczne mogą być prerenderowane, a sekcje po zalogowaniu renderowane na serwerze.

Przykład z mojej pracy to przebudowa WPPoland na statyczny system treści Astro: opis architektury treści, kontroli SEO i obsługi sześciu języków.

#Kontakt i powiązane usługi

Wyślij opis projektu: obecny stack, docelowy framework, ograniczenia adresów, integracje i języki. Odpowiadam mailowo z kolejnymi krokami.

Omów migrację

Nowe projekty w Next.js, które nie zaczynają się od WordPressa, opisuję na stronie programista Next.js.

Sprawdź inne usługi WordPress i bazę wiedzy

Wzmocnij swój biznes dzięki profesjonalnemu wsparciu technicznemu w kluczowych obszarach ekosystemu WordPress.

Rekomendacje z LinkedIn

Rekomendacje i opinie o współpracy z WPPoland

Wybrane rekomendacje liderów branży WordPress, WordCamp i e-commerce - z naciskiem na terminowość, głębię techniczną i biznesowe podejście do rozwoju serwisów.

Karolina Czapla

Karolina Czapla

Strateg Marketingowy, Performance & Digital Strategy

“Praca z Mariuszem przy WordCampie pokazała mi, jak rzadko łączy się głębokie umiejętności techniczne z prawdziwym przywództwem. Planuje, koordynuje i dowozi z ogromną dbałością o szczegóły, a jednocześnie daje zespołowi ...”

Współorganizatorka WordCamp Gdynia 2024 i 2025

Anna Kamińska

Anna Kamińska

Talent Acquisition Specialist / HR Business Partner

“Portfolio Mariusza mówi samo za siebie. Widać w nim precyzję, wszechstronność i ogromne poczucie odpowiedzialności. Można mu zaufać przy prowadzeniu projektu od pomysłu do wdrożenia, przy jednoczesnym dbaniu o komunikacj...”

Pracowaliśmy w tym samym zespole

Sarah‑Luisa Kwolek

Sarah‑Luisa Kwolek

IT Project Management & Product Owner, Web/App

“Przez ponad dwa lata mogłam liczyć na Mariusza przy zadaniach WordPress, od stylowania i szablonów po integracje z zewnętrznymi usługami. Wnosi spokój do zespołu i trzyma front‑end projektu w ryzach.”

Mariusz był jej klientem przy pracach WordPress

Argert Boja

Argert Boja

Senior Full‑Stack Developer

“Mariusz jest takim współpracownikiem, jakiego każdy chciałby mieć: mocne kompetencje full‑stack WordPress, jasne tłumaczenie decyzji technicznych i pozytywne nastawienie nawet pod presją. Sprawnie przechodzi między wtycz...”

Pracowaliśmy razem przy projektach WordPress

Varun Patil

Varun Patil

Lider Growth & CRM

“Poza samym developmentem Mariusz świetnie rozumie SEO, analitykę i growth. Rozmawia bezpośrednio z interesariuszami, zadaje właściwe pytania i dowozi rozwiązania, które realnie wpływają na wyniki biznesowe, od AMP, przez...”

Był przełożonym Mariusza przy inicjatywach growth

Rafał Osiński

Rafał Osiński

Founder @ EasyTrips.pl, Senior WordPress Dev

“Znam Mariusza z polskiej społeczności WordPress od wielu lat. Jest niezawodny, bardzo zaangażowany i po prostu zawsze 'jest', na meetupach, WordCampach i w projektach. Jeśli zależy Ci na długofalowej współpracy i kimś, k...”

Współorganizator WordUp Trójmiasto i WordCampów

Daniel Blossfeld

Daniel Blossfeld

Konsultant ds. Optymalizacji Procesów i Digitalizacji

“Miałem przyjemność współpracować z Mariuszem przez prawie trzy lata. W tym czasie jego umiejętności w zakresie rozwoju WordPressa okazały się nieocenione w wielu projektach, od budowy stron internetowych po obszary człon...”

Mariusz był jego klientem przy pracach WordPress

Natalie Wiszczor

Natalie Wiszczor

CRM & E-Mail Marketing Manager

“Miałem przyjemność współpracować z Mariuszem przez ponad 4 lata w dziedzinie technicznej. W tym czasie okazał się kompetentnym i niezawodnym kolegą. Szczególnie wyróżniała się jego przyjazna natura i niezwykła wytrwałość...”

Pracowaliśmy z Mariuszem w różnych zespołach

Mark Chalklen

Mark Chalklen

Head of Design & Build w Itineris Limited

“Mariusz to świetny członek zespołu, zawsze chętny do podjęcia każdego zadania i nauki nowych rzeczy. Świetny komunikator i ogólnie miły facet do współpracy. Trudno go jednak pokonać w naszej cotygodniowej tabeli liderów ...”

Bezpośrednio zarządzał Mariuszem

Jessica Di Pasquale

Jessica Di Pasquale

Prowadzenie inicjatyw SEO z strategiami wzrostu opartymi na danych.

“Mariusz to bardzo utalentowany, cierpliwy i doświadczony człowiek. Zawsze gotowy do pomocy i naprawiania błędów, naprawdę doceniałem pracę z nim. Jest wspaniałym kolegą!”

Bezpośrednio zarządzała Mariuszem

Biki John

Biki John

Entuzjasta Content Marketingu i SEO

“Wspaniale było pracować z Mariuszem. Naprawdę doceniałem jego rozległą wiedzę na temat WordPressa i to, jak przydawała się za każdym razem, gdy potrzebowałem wsparcia w nawigacji po CMS. Całkowicie pochwalam Mariusza za ...”

Pracowaliśmy z Mariuszem w różnych zespołach

Rafal Borowiec

Rafal Borowiec

Software Developer, Konsultant, Manager i Wykładowca

“Miałem okazję współpracować z Mariuszem przez 7 miesięcy. Doskonale radzi sobie z optymalizacją techniczną dla wyszukiwarek (SEO). Mariusz posiada również silne doświadczenie w rozwoju AMP, GTM i GA. Mariusz czuje się ba...”

Bezpośrednio zarządzał Mariuszem

Belinda Koch

Belinda Koch

Analityk Web-Tracking w TUI

“Mariusz to wspaniała osoba do współpracy. Jest niezwykle zmotywowany do nauki nowych rzeczy i dzielenia się swoją wiedzą, a także posiada szeroką wiedzę na wiele tematów. Pracowaliśmy razem nad analityką cyfrową i temata...”

Pracowaliśmy z Mariuszem nad analityką cyfrową i tematami śledzenia

Ali Nezamolmaleki

Ali Nezamolmaleki

Growth, SEO, Myślenie Analityczne, AMP

“Mariusz to niezwykle utalentowana osoba w swojej dziedzinie. Zawsze potrafi spojrzeć na problem z nowej perspektywy i myśleć nieszablonowo w sytuacjach, które wydają się być bez wyjścia. Współpraca z nim to zawsze przyje...”

Pracowaliśmy z Mariuszem w tym samym zespole

Karol Jakubcewicz

Karol Jakubcewicz

Front-end / JavaScript Developer

“Mariusz to niesamowicie doświadczony programista WordPress i specjalista SEO/SEM, z którym miałem przyjemność pracować przez prawie dwa lata. Jako lider zespołu odpowiedzialnego za rozwój strony AirHelp, był jedną z kluc...”

Pracowaliśmy z Mariuszem w tym samym zespole

Paweł Lewczuk

Paweł Lewczuk

Front-end developer, WordPress developer

“Współpracowałem z Mariuszem przy kilku projektach i nasza współpraca zawsze przebiegała wzorowo. Myślę, że jeszcze niejeden wspólny projekt przed nami. Polecam!”

Mariusz był klientem Pawła

Przemek Wroblewski

Przemek Wroblewski

Software Developer z ponad 20-letnim doświadczeniem

“Mariusz to osoba z ogromnym doświadczeniem i głęboką wiedzą o rozwiązaniach frontendowych. Silny, kompetentny i odpowiedzialny programista WordPress. Ma łatwość w budowaniu relacji międzyludzkich. Miał wizję dostrzegania...”

Pracowaliśmy z Mariuszem w różnych zespołach

Często zadawane pytania

Pytania o zakres, wdrożenie, koszty i jakość realizacji.

Czy stracę pozycje w Google podczas migracji do Astro lub Next.js?#
Ryzyko jest największe tam, gdzie zmieniają się adresy. Przed wdrożeniem spisuję każdy zaindeksowany URL i przygotowuję mapę przekierowań 301, przenoszę tytuły, opisy, dane strukturalne, adresy kanoniczne i hreflang, a potem porównuję crawl starej i nowej wersji. Po przełączeniu sprawdzam raporty w Google Search Console. Pozycji nikt nie może zagwarantować, więc tego nie obiecuję.
Ile trwa migracja z WordPress do Astro?#
Czas wynika z zakresu: liczby szablonów, języków, formularzy, integracji i tego, czy redakcja potrzebuje podglądu szkiców. Termin podaję w ofercie po audycie, razem z założeniami, na których się opiera.
Czy po migracji do Astro nadal mogę korzystać z WordPressa do edycji treści?#
Tak. To układ headless: redakcja pracuje w tym samym panelu WordPressa, a frontend w Astro pobiera treść przez REST API albo WPGraphQL. Przy stronie budowanej statycznie nowa treść pojawia się po kolejnym buildzie, więc ustalamy, co ma go uruchamiać. Strony, które muszą pokazywać zmiany od razu, renderuję na żądanie.
Jakie są główne korzyści z migracji z WordPress do Astro?#
Publiczny frontend przestaje wykonywać PHP i zapytania do bazy przy każdej wizycie, kod szablonów trafia do repozytorium, a publikacja odbywa się przez build. WordPress z dobrze ustawionym cache potrafi jednak serwować gotowe strony, dlatego przed rekomendacją migracji porównuję źródło problemu z kosztem przebudowy frontendu. Cele wydajności ustalam na podstawie pomiaru stanu wyjściowego. Sam framework nie gwarantuje wyniku, pozycji w Google ani większej liczby zapytań. WordPress, wtyczki, konta i API nadal wymagają aktualizacji, kontroli dostępu i kopii zapasowych.
Co się dzieje z moimi wtyczkami WordPress po migracji?#
Każdą wtyczkę oceniam przed migracją. Funkcje widoczne na froncie, jak formularze, metadane SEO czy osadzone skrypty, trzeba odtworzyć w nowym frontendzie. Kopie zapasowe, zabezpieczenia i utrzymanie bazy zostają potrzebne, bo WordPress dalej działa jako zaplecze. Wynikiem jest lista: co zostaje, co się zmienia, co znika.
Next.js czy Astro, co lepsze dla mojego projektu?#
Astro domyślnie renderuje strony do HTML podczas builda i nie wysyła do przeglądarki JavaScriptu komponentów, dopóki nie oznaczysz ich dyrektywą client:load, client:idle albo client:visible. To pasuje do stron firmowych, blogów i dokumentacji. Next.js to framework Reacta z App Routerem, renderowaniem na serwerze, ISR i trybem podglądu szkiców (Draft Mode), więc lepiej pasuje do aplikacji z logowaniem i danymi zmieniającymi się przy każdym żądaniu.
Ile kosztuje migracja z WordPress do Astro?#
Wyceniam indywidualnie, po audycie: liczba szablonów, objętość treści, integracje, języki i sposób publikacji. Ceny nie podaję na tej stronie. Wyślij krótki opis projektu, a dostaniesz pisemną ofertę z założeniami.
Czy zapewniasz wsparcie po zakończeniu migracji?#
Tak, w formie stałej opieki: monitoring dostępności co 1 do 5 minut, kopie zapasowe przechowywane co najmniej 30 dni w krajach UE i aktualizacje testowane najpierw na stagingu. Opieka obejmuje zaplecze WordPressa i zależności frontendu. Nie oferuję dyżuru 24/7 ani gwarantowanego czasu reakcji.

Potrzebujesz FAQ dopasowanego do branży i rynku? Przygotuję wersję pod Twoje cele biznesowe.

Porozmawiajmy

Polecane artykuły