Przeniesienie witryny WordPress może być trudnym zadaniem, ale z odpowiednią wiedzą i przygotowaniem staje się procesem możliwym do opanowania. Niezależnie od tego, czy zmieniasz domeny, aktualizujesz hosting, czy restrukturyzujesz architekturę witryny, ten kompleksowy przewodnik przeprowadzi Cię przez każdy etap procesu migracji WordPress.
Adres WordPress a adres witryny
Przed zagłębieniem się w techniki migracji kluczowe jest zrozumienie dwóch podstawowych ustawień URL w WordPress:
- Adres WordPress (URL): Tutaj znajdują się pliki rdzenia WordPress
- Adres witryny (URL): To adres, który odwiedzający wpisują w przeglądarce, aby dotrzeć do Twojej witryny
Oba ustawienia powinny zawierać część https:// i nie powinny mieć na końcu ukośnika /. Te ustawienia kontrolują sposób wyświetlania URL przez WordPress w całej witrynie, łącznie z sekcją administracyjną i frontendem.
Kiedy migracja WordPress staje się konieczna
Kilka scenariuszy może wymagać migracji witryny WordPress:
- Zmiany domeny: Rebranding lub przejście na lepszą nazwę domeny
- Migracja hostingu: Przeniesienie do lepszego dostawcy hostingu
- Zmiany serwera: Ulepszenie infrastruktury serwerowej
- Restrukturyzacja witryny: Przeniesienie WordPress do podkatalogu lub katalogu głównego
- Środowisko developerskie do produkcji: Przeniesienie że środowiska testowego na live
- HTTP do HTTPS: Wdrażanie certyfikatów SSL
Kopia zapasowa przed migracją WordPressa
Co zabezpieczyć przed migracją WordPressa
Przed podjęciem jakiejkolwiek migracji utwórz kompleksowe kopie zapasowe:
- Kopia zapasowa bazy danych: Wyeksportuj bazę danych WordPress przez phpMyAdmin lub WP-CLI
- Kopia zapasowa plików: Pobierz wszystkie pliki i katalogi WordPress
- Kopia zapasowa konfiguracji: Zapisz osobno plik wp-config.php
- Ustawienia wtyczek/motywów: Udokumentuj niestandardowe konfiguracje
Jak przetestować migrację na kopii stagingowej
Zawsze testuj migracje w środowisku testowym przed uruchomieniem na żywo:
## Utwórz testowy podkatalog
mkdir /var/www/html/test-site
## Skopiuj pliki do lokalizacji testowej
cp -r /var/www/html/wordpress/* /var/www/html/test-site/Jak zmienić adres URL WordPressa po migracji
Metoda 1: WP_HOME i WP_SITEURL w wp-config.php
Do tymczasowych zmian URL dodaj te linie do wp-config.php:
define('WP_HOME', 'https://example.com');
define('WP_SITEURL', 'https://example.com');Zalety: Szybkie i natychmiastowe Wady: Zakodowane na stałe wartości, nie można edytować w panelu administracyjnym WordPress
Metoda 2: zmiana siteurl i home przez functions.php
Jeśli masz dostęp FTP, ale nie możesz uzyskać dostępu do panelu administracyjnego WordPress:
- Uzyskaj dostęp do pliku functions.php aktywnego motywu
- Dodaj te linie po otwierającym tagu
<?php:
update_option('siteurl', 'https://example.com');
update_option('home', 'https://example.com');- Prześlij plik i odwiedź panel administracyjny
- Ważne: Usuń te linie po tym, jak witryna działa
Metoda 3: stała RELOCATE w wp-config.php
WordPress zawiera automatyczną metodę relokacji:
- Edytuj wp-config.php i dodaj przed “That’s all, stop editing!”:
define('RELOCATE', true);- Odwiedź
https://twojawitryna.com/wp-login.php - Zaloguj się normalnie
- Sprawdź Ustawienia > Ogólne, aby zweryfikować URL-e
- Usuń stałą RELOCATE po zakończeniu
Ostrzeżenie dotyczące bezpieczeństwa: Nigdy nie pozostawiaj stałej RELOCATE w wp-config.php, ponieważ tworzy luki bezpieczeństwa.
Metoda 4: edycja siteurl i home w phpMyAdmin
Dla precyzyjnej kontroli edytuj URL-e bezpośrednio w bazie danych:
- Uzyskaj dostęp do phpMyAdmin
- Wybierz bazę danych WordPress
- Znajdź tabelę wp_options (prefiks może się różnić)
- Edytuj wiersze ‘siteurl’ i ‘home’
- Zaktualizuj option_value do nowych URL-ów
Kluczowe: Zawsze twórz kopię zapasową bazy danych przed wprowadząniem bezpośrednich zmian!
Ręczna migracja WordPressa na inny serwer lub domenę
Jak przenieść WordPressa na nowy serwer
Podczas migracji na nowy serwer:
- Kopia zapasowa wszystkiego: Pełna kopia witryny i bazy danych
- Eksport bazy danych: Użyj phpMyAdmin lub WP-CLI
- Transfer plików: Użyj FTP, SFTP lub rsync
- Import bazy danych: Utwórz nową bazę danych i importuj
- Zaktualizuj wp-config.php: Zmodyfikuj dane uwierzytelniające bazy danych
- Zaktualizuj URL-e: Użyj jednej z powyższych metod
- Dokładne testowanie: Sprawdź całą funkcjonalność
Jak zmienić domenę WordPressa przez WP-CLI
Zmiana domen wymaga szczególnej uwagi na dane serializowane:
## Użycie WP-CLI (zalecane)
wp search-replace 'staradomena.com' 'nowadomena.com' --skip-columns=guid
## Lub użyj wtyczki z obsługą danych serializowanych:
## - Better Search ReplaceWażne: Nigdy nie aktualizuj kolumny GUID w tabeli wp_posts. GUID oznacza Globally Unique Identifier i nie powinien się zmieniać, aby zachować kompatybilność z czytnikami RSS.
Migracja z podkatalogu do katalogu głównego
Przenoszenie WordPress z podkatalogu do katalogu głównego:
- Zaktualizuj URL-e w panelu administracyjnym WordPress: Ustawienia > Ogólne
- Skopiuj pliki: Przenieś pliki WordPress do nowej lokalizacji
- Zaktualizuj .htaccess: Zmodyfikuj reguły przepisywania
- Zaktualizuj bezpośrednie linki: Ponownie zapisz strukturę linków
- Sprawdź linki wewnętrzne: Zaktualizuj zakodowane URL-e
Migracja multisite
WordPress Multisite wymaga dodatkowych uwag:
- Kopia zapasowa sieci: Wszystkie witryny i bazy danych
- Edycja wp-config.php: Zaktualizuj stałe multisite
- Aktualizacja .htaccess: Zmodyfikuj reguły przepisywania multisite
- Aktualizacje bazy danych: Zaktualizuj tabele wp_blogs i wp_site
- Opcje poszczególnych witryn: Zaktualizuj tabele opcji każdej witryny
Co sprawdzić po migracji WordPressa
Co przetestować zaraz po migracji
- Przetestuj funkcjonalność frontendu
- Zweryfikuj dostęp do panelu administracyjnego
- Sprawdź wszystkie formularze i zgłoszenia
- Przetestuj funkcjonalność e-commerce
- Zweryfikuj logowanie i rejestrację użytkowników
Przekierowania 301 i mapa witryny po zmianie domeny
- Zaimplementuj przekierowania 301 że starych URL-ów
- Zaktualizuj sitemap.xml
- Wyślij nową mapę witryny do wyszukiwarek
- Zaktualizuj właściwość Google Analytics
- Zweryfikuj Google Search Console
Cache, baza danych i SSL po migracji
- Wyczyść wszystkie pamięci podręczne
- Zoptymalizuj tabele bazy danych
- Sprawdź kompatybilność wtyczek
- Przetestuj szybkość witryny
- Zweryfikuj certyfikat SSL
Typowe problemy migracji i rozwiązania
Biały ekran śmierci po migracji
Zazwyczaj spowodowany przez:
- Wyczerpanie limitu pamięci
- Konflikty wtyczek
- Niezgodność motywu
Rozwiązanie: Zwiększ limit pamięci w wp-config.php:
define('WP_MEMORY_LIMIT', '256M');Błędy połączenia z bazą danych
Sprawdź ustawienia wp-config.php:
define('DB_NAME', 'nazwa_bazy_danych');
define('DB_USER', 'nazwa_użytkownika');
define('DB_PASSWORD', 'haslo');
define('DB_HOST', 'localhost');Uszkodzone linki po migracji
- Użyj WP-CLI search-replace dla wszelkich zakodowanych URL-ów
- Ponownie zapisz strukturę linków bezpośrednich w Ustawienia > Bezpośrednie linki
- Sprawdź w bazie danych wszelkie pozostałe stare URL-e
Wtyczki do migracji: kiedy ich używać
Popularne wtyczki do migracji
Duplicator
- Według opisu w katalogu wtyczek darmowa wersja robi kopie dowolnego rozmiaru
- Tworzy samoinstalujące się pakiety
- Bezpłatna i premium wersja
All-in-One WP Migration
- Niezwykle prosty w użyciu
- Eksportuje i importuje jednym kliknięciem
- Limit importu w wersji bezpłatnej wyznacza hosting (maksymalny rozmiar wysyłanego pliku), nie wtyczka
WP Migrate (dawniej WP Migrate DB Pro)
- Najlepszy dla migracji tylko bazy danych
- Funkcja find & replace
- Idealny dla deweloperów
Kiedy wybrać migrację ręczną
- Duże witryny przekraczające limity wtyczek
- Złożone konfiguracje niestandardowe
- Wymagania dotyczące bezpieczeństwa i audytu
- Sytuacje, w których potrzebna jest pełna kontrola
Migracja dużej strony WordPress i przekierowania 301
Podczas migracji dużej witryny WordPress z tysiącami URL-ów:
Faza inwentaryzacji
- Wyeksportuj wszystkie URL-e z Google Analytics
- Przeskanuj istniejącą witrynę programem Screaming Frog
- Wyeksportuj wszystkie zaindeksowane strony z Google Search Console
- Udokumentuj wszystkie błędy 404
Faza planowania
- Zmapuj stare URL-e na nowe
- Grupuj przekierowania według wzorca
- Priorytetyzuj strony o wysokim ruchu
- Planuj łańcuchy przekierowań tak, aby minimalizować skoki
Faza wdrożenia
- Przetestuj przekierowania w środowisku testowym
- Wdrażaj partiami
- Monitoruj czasy odpowiedzi serwera
- Sprawdzaj pod kątem pętli przekierowań
Faza weryfikacji
- Użyj narzędzi do sprawdzania przekierowań online
- Monitoruj Search Console pod kątem błędów indeksowania
- Sprawdź czasy odpowiedzi serwera
- Zweryfikuj transfer kapitału linków
Faza czyszczenia
- Usuń tymczasowe przekierowania 302 (przekonwertuj na 301)
- Usuń niepotrzebne reguły
- Udokumentuj wszystkie przekierowania do przyszłego użytku
- Zaktualizuj mapę witryny XML nowymi URL-ami
Przeniesienie witryny WordPress nie musi być stresującym doświadczeniem. Mając solidny plan tworzenia kopii zapasowych, rozumiejąc metody migracji i podchodząc systematycznie do każdego kroku, możesz zapewnić płynne przejście, które zachowuje Twoje rankingi SEO, dane i funkcjonalność witryny.
Dowiedz się więcej o usługach WordPress w WPPoland.
Dane serializowane, poczta i cron po migracji
Zserializowane dane w bazie. Zwykłe UPDATE ... REPLACE() w SQL podmienia adres wewnątrz zserializowanej tablicy, ale nie aktualizuje zapisanej przed nim długości ciągu. Wpis staje się nieczytelny dla PHP i wtyczka, która z niego korzysta, po prostu przestaje widzieć swoje ustawienia, zwykle bez błędu na ekranie. Dlatego podmiana adresów idzie przez wp search-replace albo Better Search Replace, które deserializują dane przed zamianą. Jeśli już zrobiłeś to czystym SQL, nie naprawiaj tego kolejnym zapytaniem, tylko wróć do kopii i powtórz poprawnym narzędziem.
Poczta wychodząca z nowego serwera. Formularz kontaktowy po migracji nadal wyświetla komunikat o wysłaniu, bo wp_mail() zwraca prawdę, gdy serwer przyjął wiadomość. To, czy wiadomość dotarła, zależy od SPF i DKIM dla nowego adresu IP, a tych nikt nie przenosi razem z plikami. Wyślij testową wiadomość na skrzynkę poza własną domeną i sprawdź nagłówki.
Zadania cron. WordPress uruchamia je przy ruchu na stronie, więc na świeżo przeniesionej witrynie bez ruchu nie uruchamia się nic: ani kopie, ani kolejki, ani odświeżanie cache. Jeśli na starym serwerze było wpięte systemowe zadanie cron, trzeba je odtworzyć ręcznie, bo nie ma go ani w plikach, ani w bazie.
Co usunąć po migracji, gdy strona już działa
Kilka metod z tego przewodnika zostawia ślady, które miały istnieć tylko na czas przenosin. Przejdź przez nie po teście frontendu i panelu administracyjnego:
- Stała
RELOCATEwwp-config.php. Pozostawiona tworzy lukę bezpieczeństwa, więc usuwasz ją zaraz po sprawdzeniu adresów w Ustawienia > Ogólne. - Wywołania
update_option('siteurl', ...)iupdate_option('home', ...)wfunctions.phpmotywu. Wykonują się przy każdym załadowaniu strony, więc po odzyskaniu dostępu do panelu idą do usunięcia. WP_HOMEiWP_SITEURLwwp-config.php. Dopóki tam są, adresów nie zmienisz w panelu. Zdecyduj, czy zostają na stałe, czy wracasz do wartości zapisanych w bazie.- Przekierowania 302 z fazy wdrożenia. Te, które mają zostać, zamień na 301, a resztę usuń razem z niepotrzebnymi regułami.
- Katalog testowy, na przykład
/var/www/html/test-site. To pełna kopia plików witryny razem zwp-config.phpi nie ma powodu, żeby leżała na serwerze po migracji.
Na koniec zapisz listę wszystkich przekierowań. Przy następnej zmianie adresów będzie punktem wyjścia do mapowania starych URL-i na nowe.
Po stronie wdrożenia ten temat trzymamy pod migrację na Next.js lub Astro.







