Skip to content

Wszystko o WordPressie, tworzeniu stron — i nie tylko

🚀 Jak przenieść stronę WordPress z lokalnego hosta na serwer produkcyjny

🚀 Jak przenieść stronę WordPress z lokalnego hosta na serwer produkcyjny

Tworzenie strony na serwerze lokalnym to standard dla tych, którzy cenią szybkość i bezpieczeństwo. Żadnych ograniczeń hostingu, natychmiastowy zapis plików, wygodne debugowanie. A gdy strona jest gotowa, pojawia się pytanie: jak przenieść to wszystko na domenę produkcyjną i niczego nie zepsuć?

Proces migracji WordPressa z localhost na serwer produkcyjny przeraża początkujących. Pliki, baza danych, ścieżki, wp-config, wydaje się, że błąd na którymkolwiek etapie położy stronę. W rzeczywistości zadanie rozwiązuje się na trzy sposoby: za pomocą wbudowanego eksportu, wtyczki lub ręcznego przeniesienia. Każdy z nich pasuje do innego scenariusza.

💡 Szybki przegląd:

  • Wyeksportuj treść za pomocą wbudowanego narzędzia WordPressa, jeśli na serwerze docelowym jest czysta instalacja, bez wpisów i stron
  • Zainstaluj wtyczkę do migracji (Duplicator lub BackupBuddy), aby przenieść całą stronę z automatyczną zamianą wszystkich adresów URL
  • Przenieś pliki i bazę ręcznie przez phpMyAdmin i SFTP, aby mieć pełną kontrolę nad każdym krokiem
  • Po zastosowaniu dowolnej metody wejdź w „Bezpośrednie odnośniki" i kliknij zapisz, w przeciwnym razie strony zwrócą błąd 404

Warunki wstępne przeniesienia

Przed migracją proszę się upewnić, że trzy elementy są na swoim miejscu.

Lokalna strona WordPress musi być w pełni sprawna. Jeśli nie skonfigurował Pan jeszcze środowiska, proszę zajrzeć do naszego poradnika dotyczącego instalacji WordPressa na Macu przez MAMP lub do materiału o Local by Flywheel, narzędziu, które uruchamia lokalny serwer za pomocą kilku kliknięć.

Plan hostingowy z obsługą PHP i MySQL. Praktycznie każdy nowoczesny hosting będzie odpowiedni: automatyczne instalatory WordPressa są dostępne u większości dostawców. Proszę sprawdzić limity rozmiaru bazy danych, lokalny zrzut może ważyć więcej, niż Pan oczekuje.

Dostęp SFTP do serwera i klient taki jak FileZilla. Alternatywą jest menedżer plików cPanel, ale nie pokazuje on lokalnej struktury katalogów. SFTP jest bardziej niezawodny: widzi Pan obie strony i przeciąga pliki myszą.

Metoda 1: wbudowany eksport i import WordPressa

Najprostsza ścieżka to użycie natywnego narzędzia eksportu WordPressa. Jest odpowiednia, gdy na serwerze docelowym nie ma jeszcze treści. Import nie nadpisuje istniejących wpisów, lecz dodaje do nich nowe, więc czysta instalacja jest obowiązkowa.

Proszę otworzyć lokalny panel administracyjny WordPressa i przejść do „Narzędzia → Eksport". Proszę wybrać „Cała zawartość" i kliknąć przycisk pobierania.

Eksport całej zawartości WordPress do pliku XML

Otrzyma Pan plik XML ze wszystkimi wpisami, stronami, plikami multimedialnymi i menu. Plik zawiera wyłącznie treść, motywy i wtyczki nie wchodzą w jego skład.

Teraz proszę zalogować się do panelu administracyjnego działającej strony. Proszę aktywować motyw i wtyczki, których używał Pan lokalnie. Następnie proszę otworzyć „Narzędzia → Import".

Sekcja importu w panelu administracyjnym WordPress

Proszę zainstalować importer WordPressa (system zaproponuje to podczas pierwszego uruchomienia) i go aktywować. Proszę kliknąć „Uruchom importer" pod nagłówkiem WordPress.

Przesyłanie pliku XML przez importer WordPress

Przyciskiem „Wybierz plik" proszę wskazać pobrany XML i uruchomić import. Czas oczekiwania zależy od objętości treści i taryfy hostingu.

Metoda przenosi wpisy, strony, media i menu. Rozmieszczenie menu i widgety trzeba będzie ustawić od nowa, ale to pięć minut pracy. Główna zaleta: żadnych dodatkowych wtyczek i ręcznych poprawek w bazie danych.

Metoda 2: wtyczki do migracji

Wtyczki całkowicie rozwiązują kwestię migracji: pakują stronę do archiwum, przenoszą pliki i bazę danych, automatycznie podmieniają adresy URL. Trzy sprawdzone opcje.

DesktopServer

Interfejs wtyczki DesktopServer do migracji WordPress

DesktopServer, połączenie aplikacji desktopowej i bezpłatnej wtyczki. Aplikacja uruchamia lokalne strony na Macu i Windows, a wtyczka eksportuje je na serwer produkcyjny. Podczas eksportu proszę zaznaczyć opcję „Pobierz dane rzeczywistego serwera hostingowego", wtyczka sama przechwyci ustawienia hosta docelowego. Minus: część desktopowa od dawna nie była aktualizowana, a wtyczka była ostatnio testowana z WordPress 4.x. Dla nowszych wersji WP lepiej sięgnąć po Duplicator.

BackupBuddy

Wtyczka BackupBuddy do tworzenia kopii zapasowych i migracji WordPress

BackupBuddy od iThemes (obecnie SolidWP), wtyczka premium skoncentrowana na kopiach zapasowych. Potrafi tworzyć pełne backupy strony, planować je według harmonogramu i przechowywać kopie lokalnie lub w chmurze (Stash). Do migracji proszę użyć funkcji ImportBuddy: podmienia ona domeny w bazie danych, poprawia adresy URL i wdraża stronę na nowym serwerze. Cena zaczyna się od 99 USD rocznie za jedną stronę. Uzasadniony wydatek, jeśli regularnie synchronizują Państwo wersję deweloperską z produkcyjną.

Duplicator

Wtyczka Duplicator do migracji stron WordPress

Duplicator, najpopularniejsza bezpłatna wtyczka do migracji. Proszę zainstalować ją na lokalnej stronie, utworzyć pakiet (treść + motywy + wtyczki), pobrać archiwum i plik installer.php, wgrać oba pliki na serwer docelowy i uruchomić installer.php przez przeglądarkę. Wtyczka rozpakuje stronę, podmieni adresy URL w bazie danych i skonfiguruje plik wp-config.

Duplicator Pro dodaje tworzenie kopii zapasowych według harmonogramu, przestrzeń w chmurze (Dropbox, Dysk Google, Amazon S3), obsługę multisite, API dla cPanel i powiadomienia na e-mail. Subskrypcja od 49,50 USD rocznie, rozsądna cena za automatyzację.

Metoda 3: ręczne przeniesienie plików i bazy danych

Pełna kontrola nad każdym krokiem. Metoda wymaga dostępu do phpMyAdmin i SFTP, ale działa w każdym środowisku, od taniego hostingu współdzielonego po VPS.

Eksport bazy danych z serwera lokalnego

Uruchom serwer lokalny i otwórz phpMyAdmin, zwykle pod adresem localhost/phpmyadmin. W poniższym przykładzie używany jest XAMPP:

Interfejs phpMyAdmin na serwerze lokalnym XAMPP

W lewym panelu znajdź bazę danych swojej witryny WordPress. Wybierz ją i kliknij „Eksport" w górnym menu. Pozostaw metodę „Szybki" i format SQL.

Eksport bazy danych WordPress do formatu SQL

Plik SQL zostanie zapisany w folderze pobierania.

Zamiana lokalnych adresów URL w zrzucie

Lokalna witryna używa ścieżek bezwzględnych: wszystkie linki w bazie zaczynają się od http://localhost/. Po przesłaniu na serwer produkcyjny muszą wskazywać na Pana/Pani domenę, w przeciwnym razie obrazy nie załadują się, a strony będą zawierać uszkodzone ścieżki.

Otwórz plik SQL w edytorze kodu (VS Code, Sublime Text, Notepad++). Użyj wyszukiwania z zamianą: http://localhost/your-sitehttps://yourdomain.com. Jeśli witryna lokalnie znajdowała się w podfolderze, zamień całą ścieżkę, łącznie z nazwą folderu.

Zamiana adresów URL w zrzucie bazy danych za pomocą edytora kodu

Zapisz plik po zamianie. Sprawdź dwukrotnie, czy home i siteurl w tabeli wp_options wskazują na nową domenę.

Tworzenie bazy danych na hostingu

Zaloguj się do panelu sterowania hostingu. Jeśli używany jest cPanel, otwórz sekcję „Bazy danych MySQL".

Sekcja baz danych MySQL w panelu cPanel

Utwórz nową bazę danych, użytkownika i hasło. Zapamiętaj wszystkie trzy wartości, będą potrzebne do wp-config. Na większości hostingów współdzielonych nazwa bazy danych pokrywa się z nazwą użytkownika.

Na zarządzanym hostingu bez cPanel interfejs wygląda inaczej. Dodaje Pan/Pani nową instalację WordPressa przez panel dostawcy, baza danych tworzona jest automatycznie razem z witryną.

Dodawanie instalacji WordPress na hostingu zarządzanym

Wypełnij pola: nazwa witryny, domena (można podać techniczną, jeśli główna nie jest jeszcze przypisana), login i hasło administratora.

Formularz konfiguracji nowej strony WordPress na hostingu

Po wysłaniu formularza witryna i baza danych są gotowe do importu treści.

Import bazy danych

Wróć do phpMyAdmin (teraz po stronie hostingu), wybierz nowo utworzoną bazę danych i otwórz zakładkę „Import". Wskaż edytowany plik SQL i uruchom import.

Import zrzutu SQL przez phpMyAdmin na hostingu

Jeśli phpMyAdmin jest niedostępny, niektórzy dostawcy oferują alternatywę, „Przywracanie bazy danych" w sekcji MySQL. Funkcja jest taka sama: wybiera Pan/Pani plik SQL i przesyła go.

Edycja wp-config.php

Otwórz plik wp-config.php w katalogu głównym lokalnej instalacji WordPressa. Znajdź i zamień cztery stałe:

1define('DB_NAME', 'имя_вашей_базы');
2define('DB_USER', 'пользователь_базы');
3define('DB_PASSWORD', 'пароль_базы');
4define('DB_HOST', 'localhost');

DB_HOST w większości przypadków pozostaje localhost, host sam doprecyzuje, jeśli potrzebny będzie adres IP. Proszę zachować kopię starych wartości: jeśli coś pójdzie nie tak, łatwiej będzie się wycofać.

Przesyłanie plików przez SFTP

Proszę połączyć się z serwerem przez klienta SFTP (FileZilla, WinSCP). Dane do połączenia znajdują się w panelu hostingu; często są one tożsame z loginem i hasłem do cPanel.

Proszę przejść do folderu głównego witryny, zazwyczaj jest to public_html, www lub htdocs. Proszę przenieść wszystkie pliki z lokalnego folderu WordPress do tego katalogu, włącznie z edytowanym plikiem wp-config.php.

Resetowanie bezpośrednich odnośników

Ostatni krok. Proszę wejść do panelu administracyjnego działającej witryny: „Ustawienia → Bezpośrednie odnośniki". Proszę nie zmieniać struktury, tylko kliknąć „Zapisz zmiany". WordPress ponownie zapisze .htaccess i wewnętrzne trasy. Bez tego strony inne niż główna będą zwracać błąd 404.

⁉️🤔 Często zadawane pytania

Co zrobić, jeśli baza danych jest zbyt duża, by zaimportować ją przez phpMyAdmin?

Standardowy limit phpMyAdmin to około 50 MB. Proszę podzielić zrzut na części według tabel (wp_posts, wp_postmeta są często najcięższe) lub użyć WP-CLI z komendą wp db import. Niektóre hostingi przyjmują skompresowany plik .sql.gz, co zmniejsza rozmiar 3-5 razy.

Czy koniecznie trzeba ręcznie poprawiać URL w zrzucie SQL?

Nie. Narzędzie WP-CLI search-replace robi to jedną komendą: wp search-replace 'http://localhost/site' 'https://domain.com'. Jeśli WP-CLI jest niedostępne, wtyczki migracyjne z metody 2 zastępują URL automatycznie podczas wdrażania.

Czy można przenieść witrynę bez zatrzymywania starej?

Wbudowany eksport (metoda 1) odbywa się bez przestoju, stara witryna nadal działa. Ręczne przenoszenie (metoda 3) wymaga ostrożności: podczas gdy przesyła Pan/Pani pliki i bazę, odwiedzający widzą starą wersję. Wtyczki migracyjne zazwyczaj tworzą natychmiastową migawkę i nie wymagają zatrzymania.

Jak sprawdzić, czy migracja przebiegła pomyślnie?

Proszę przejść przez wszystkie typy stron: główną, wpis, kategorię, stronę z obrazkami. Proszę otworzyć konsolę przeglądarki (F12 → Console), nie powinno być błędów 404 ani treści mieszanej. Proszę sprawdzić panel administracyjny: „Narzędzia → Kondycja witryny" pokaże problemy ze ścieżkami i uprawnieniami.

Co zrobić, jeśli po przeniesieniu nie ładują się obrazy?

Najprawdopodobniej w bazie pozostały lokalne adresy URL. Proszę uruchomić wyszukiwanie z zamianą jeszcze raz, tym razem bezpośrednio w działającej bazie przez Better Search Replace lub WP-CLI. Proszę upewnić się, że folder wp-content/uploads został w całości skopiowany na serwer.

Przenoszenie WordPress z localhost: którą metodę wybrać

Trzy metody pokrywają każdy scenariusz. Świeża instalacja bez treści, proszę wziąć wbudowany eksport, to zajmie pięć minut. Regularna synchronizacja wersji deweloperskiej z produkcyjną, wtyczka pokroju Duplicator Pro lub BackupBuddy zwraca się przy drugim przeniesieniu. Jednorazowa przeprowadzka z pełną kontrolą, metoda ręczna przez phpMyAdmin i SFTP daje zrozumienie każdego wiersza w bazie i każdego pliku na serwerze.

Przed jakąkolwiek migracją proszę wykonać pełną kopię zapasową lokalnej witryny. I proszę nie pomijać ostatniego kroku z bezpośrednimi odnośnikami, bez niego nawet idealnie przeniesiona witryna nie zostanie otwarta.