Przeniesienie strony z serwera na localhost wymaga skopiowania plików, eksportu bazy danych oraz dostosowania konfiguracji WordPressa. Najważniejsze zmiany dotyczą pliku wp-config.php i adresów URL, które po migracji powinny wskazywać na http://localhost/nazwa-folderu.
Co przygotować przed migracją?
Localhost jest środowiskiem uruchomionym na Twoim komputerze. W poradniku zakładamy, że masz już działający XAMPP lub podobne narzędzie z serwerem Apache, PHP, MySQL albo MariaDB oraz dostępem do phpMyAdmin.
Przeniesienie WordPressa z serwera online na komputer przydaje się podczas testowania zmian w kodzie, motywach i wtyczkach. Lokalna kopia nie jest publicznie dostępna, dlatego możesz pracować na niej bez modyfikowania działającej strony.
Do migracji potrzebujesz:
- klienta FTP, na przykład FileZilla, do pobrania plików strony,
- dostępu do phpMyAdmin na serwerze,
- działającego lokalnego serwera, na przykład XAMPP,
- pustej lokalnej bazy danych,
- eksportu bazy w formacie
.sql, ewentualnie.ziplub.gz.
Jak pobrać pliki i bazę danych z serwera?
Najpierw przygotuj kopię plików oraz bazy. Nie usuwaj jeszcze danych z hostingu, ponieważ mogą być potrzebne do ponowienia migracji albo odzyskania brakujących elementów.
- Pobierz pliki przez FTP – połącz FileZillę z serwerem, otwórz katalog strony, najczęściej
public_html, i skopiuj całą jego zawartość na komputer. Pobierz również ukryte pliki, takie jak.htaccess, jeśli klient FTP je wyświetla. - Ustal nazwę używanej bazy – znajdziesz ją w pliku
wp-config.phpprzy wartościDB_NAME. Ten sam plik zawiera dane potrzebne do logowania do bazy na serwerze. - Otwórz phpMyAdmin – wybierz bazę przypisaną do WordPressa, a następnie przejdź do zakładki „Eksport”.
- Eksportuj bazę do pliku – wybierz format SQL i zapisz wynik na komputerze. Przy dużej bazie możesz skorzystać z kompresji ZIP lub GZIP.
Pobrany katalog powinien zawierać między innymi foldery wp-admin, wp-content i wp-includes, a także plik wp-config.php. Folder wp-content jest szczególnie ważny, ponieważ przechowuje motywy, wtyczki i media.
Jak umieścić stronę na localhost?
W tej części przygotujesz lokalny katalog strony i zaimportujesz do niego bazę danych. Nazwa folderu będzie częścią adresu lokalnej witryny, dlatego wybierz ją bez spacji i znaków specjalnych, na przykład moja-strona.
- Uruchom Apache i MySQL – w panelu XAMPP włącz obie usługi. Bez Apache strona nie będzie dostępna w przeglądarce, a bez MySQL WordPress nie połączy się z bazą.
- Skopiuj pliki do katalogu lokalnego – w XAMPP umieść je w folderze
htdocs, na przykładC:\xampp\htdocs\moja-strona. W innym środowisku użyj jego katalogu przeznaczonego na pliki stron. - Utwórz lokalną bazę danych – otwórz phpMyAdmin pod adresem
http://localhost/phpmyadmin, przejdź do „Bazy danych”, wpisz nazwę, na przykładmoja_strona, i utwórz bazę. - Zaimportuj plik SQL – wybierz utworzoną bazę, otwórz zakładkę „Import”, wskaż pobrany plik
.sql,.ziplub.gz, a następnie rozpocznij import.
Po imporcie w bazie powinny pojawić się tabele WordPressa. Ich przedrostek nie zawsze wynosi wp_. Jeśli podczas instalacji użyto innego przedrostka, tabela z ustawieniami będzie nazywać się na przykład xyz_options, a nie wp_options.
Jak skonfigurować wp-config.php i adres strony?
Plik wp-config.php nadal zawiera dane dostępowe do bazy na zewnętrznym serwerze. Trzeba zastąpić je danymi lokalnymi. Otwórz plik znajdujący się w folderze strony i odszukaj sekcję z poniższymi stałymi:
define( 'DB_NAME', 'nazwa_bazy' );
define( 'DB_USER', 'uzytkownik' );
define( 'DB_PASSWORD', 'haslo' );
define( 'DB_HOST', 'adres_serwera' );
W typowej konfiguracji XAMPP dane powinny wskazywać na lokalną bazę:
define( 'DB_NAME', 'moja_strona' );
define( 'DB_USER', 'root' );
define( 'DB_PASSWORD', '' );
define( 'DB_HOST', 'localhost' );
Nie kopiuj bez zmian danych z hostingu. Na serwerze online używane są konkretne nazwy użytkowników, hasła i hosty baz danych. W lokalnej instalacji XAMPP najczęściej stosuje się użytkownika root bez hasła, ale konfiguracja może być zmieniona przez administratora lub inne narzędzie. Jeśli lokalna baza ma ustawione hasło, wpisz je zamiast pustej wartości.
Błędna wartość którejkolwiek stałej może wywołać komunikat o nieudanym połączeniu z bazą danych. Przed zapisaniem pliku sprawdź więc, czy nazwa w DB_NAME dokładnie odpowiada bazie utworzonej w phpMyAdmin.
Teraz zmień adresy zapisane w bazie. W phpMyAdmin otwórz tabelę wp_options albo jej odpowiednik z właściwym przedrostkiem. Odszukaj rekordy:
- siteurl – podstawowy adres instalacji WordPressa,
- home – adres strony widoczny dla użytkowników.
Jeśli pliki znajdują się w C:\xampp\htdocs\moja-strona, w obu polach wpisz:
http://localhost/moja-strona
Możesz użyć również adresu http://127.0.0.1/moja-strona. Najważniejsze jest zachowanie tej samej wersji adresu w ustawieniach i w przeglądarce. Jeżeli folder strony nazywa się inaczej, zastąp moja-strona właściwą nazwą.
Zmiana tylko pliku
wp-config.phpnie wystarczy. WordPress przechowuje adres witryny także w bazie danych, dlatego wartościsiteurlihomemuszą wskazywać na localhost.
Co sprawdzić po uruchomieniu strony?
Otwórz w przeglądarce adres lokalnej instalacji, na przykład http://localhost/moja-strona. Jeśli strona się nie wyświetla, sprawdź poniższe elementy:
- czy Apache i MySQL są uruchomione w panelu lokalnego serwera,
- czy nazwa bazy, użytkownik, hasło i host w
wp-config.phpsą prawidłowe, - czy folder strony znajduje się bezpośrednio w
htdocslub właściwym katalogu dokumentów, - czy wartości
siteurlihomezawierają poprawną nazwę folderu, - czy motyw, wtyczki, linki i grafiki działają po zmianie adresu.
Jeśli strona się otwiera, ale grafiki lub linki nadal odwołują się do domeny produkcyjnej, w bazie mogą znajdować się kolejne wystąpienia starego adresu. Możesz zmienić je ręcznie albo użyć wtyczki Better Search Replace. Wyszukaj w niej adres domeny, a jako nową wartość wpisz adres localhost, na przykład http://localhost/moja-strona.
Przy masowej zamianie zachowaj ostrożność. Niektóre dane WordPressa są serializowane, dlatego prosta zamiana tekstu bez uwzględnienia ich struktury może uszkodzić ustawienia. Better Search Replace jest bezpieczniejszym rozwiązaniem niż edycja całego pliku SQL w zwykłym edytorze.
Po poprawnym imporcie plików, bazy i adresów WordPress powinien działać lokalnie pod adresem http://localhost/nazwa-folderu. Oryginalna strona na serwerze pozostaje bez zmian, więc możesz wykorzystać lokalną kopię do testów i dalszej pracy.