Plik wp-config.php
to takie serce Twojego WordPressa. Tam siedzą kluczowe informacje, jak dane do bazy danych i inne ważne ustawienia. Dlatego zasada numer jeden brzmi: NIE GRZEB TAM, JEŚLI NIE WIESZ, CO ROBISZ! A zasada numer dwa: ZAWSZE RÓB KOPIĘ ZAPASOWĄ TEGO PLIKU PRZED JAKĄKOLWIEK ZMIANĄ! Serio, mówię to dla Twojego dobra. Jedna literówka w tym pliku i Twoja strona może przestać działać kompletnie, pokazując tylko biały ekran śmierci albo jakiś inny „krzak”. Uważaj!
No dobra, skoro już Cię wystarczająco nastraszyłam 😉, to przejdźmy do sedna. Czasem zdarza się sytuacja, że musisz na sztywno powiedzieć WordPressowi, pod jakim adresem URL ma działać Twoja strona. I tu właśnie wkraczają dwie magiczne stałe (takie specjalne zmienne), które możesz zdefiniować w wp-config.php
: WP_HOME
i WP_SITEURL
.
Co to do cholery jest WP_HOME i WP_SITEURL? (I czym się różnią?)
W normalnych warunkach te dwa adresy ustawiasz sobie w panelu WordPressa, wchodząc w Ustawienia -> Ogólne
. Są tam dwa pola:
- Adres WordPressa (URL) – to odpowiada stałej
WP_SITEURL
. Mówi WordPressowi, gdzie znajdują się jego pliki systemowe (katalog zwp-admin
,wp-content
,wp-includes
). To taki adres „biura” WordPressa. - Adres witryny (URL) – to odpowiada stałej
WP_HOME
. To jest ten adres, który Twoi użytkownicy wpisują w przeglądarce, żeby wejść na Twoją stronę. To adres „domowy”, frontowy Twojej witryny.
Najczęściej te dwa adresy są IDENTYCZNE, np. https://twojadomena.pl
. Ale zdarzają się sytuacje, że WordPress jest zainstalowany w podkatalogu (np. https://twojadomena.pl/wordpress
), a strona główna ma być widoczna pod adresem https://twojadomena.pl
. Wtedy WP_SITEURL
będzie wskazywał na podkatalog, a WP_HOME
na domenę główną. Kumasz różnicę? Adres plików vs. adres, pod którym widać stronę.
Po co w ogóle ruszać wp-config.php, skoro można to ustawić w panelu?
No właśnie – czasem NIE MOŻNA wejść do panelu! 😉 I wtedy zdefiniowanie tych stałych w wp-config.php
lub w bazie danych (gdzie jeszcze bardziej boicie się zaglądać) to jedyny ratunek. Kiedy to się przydaje najbardziej?
- Po migracji strony: Przeniosłaś stronę na inny serwer albo zmieniłaś domenę i nagle strona się rozjechała, nie działają linki albo nie możesz się zalogować do admina? Często problemem są stare adresy zapisane w bazie danych. Zdefiniowanie
WP_HOME
iWP_SITEURL
wwp-config.php
na sztywno z nowymi, poprawnymi adresami może postawić stronę na nogi i pozwolić Ci wejść do panelu, żeby dokończyć zmiany (np. narzędziem typu Better Search Replace). - Po włączeniu SSL (HTTPS): Zainstalowałaś certyfikat SSL, ale strona nadal ładuje się po
http://
albo masz problemy z tzw. „mixed content” (mieszaną treścią)? Upewnienie się, żeWP_HOME
iWP_SITEURL
mająhttps://
na początku, może rozwiązać problem (chociaż często trzeba zrobić więcej). - Gdy nie możesz wejść do panelu admina: Z jakiegoś powodu straciłaś dostęp do
/wp-admin/
, a wiesz, że problemem jest zły adres URL w ustawieniach? Edycjawp-config.php
przez FTP to często jedyna droga. - Żeby „zabetonować” ustawienia: Jeśli chcesz mieć 100% pewności, że nikt (nawet Ty przez przypadek!) nie zmieni tych adresów w panelu admina, możesz je zdefiniować w
wp-config.php
. Wtedy pola wUstawienia -> Ogólne
staną się szare i nieedytowalne. Czasem przydatne przy bardziej złożonych instalacjach lub gdy nad stroną pracuje kilka osób. - Gdy wordPress jest w podkatalogu: Jak wspomniałam, jeśli pliki WP masz w katalogu
/wordpress
, a strona ma działać pod główną domeną, to zdefiniowanieWP_HOME
iWP_SITEURL
jest sposonem, żeby to poprawnie skonfigurować. - Mały bonus (podobno): Niektórzy twierdzą, że zdefiniowanie tego w
wp-config.php
minimalnie przyspiesza stronę, bo WordPress nie musi za każdym razem pytać bazy danych o te adresy. Ja tam wielkiej różnicy nie widzę, ale jak ktoś lubi mikrooptymalizacje, to proszę bardzo 😉. Główne powody są jednak te „ratunkowe” i konfiguracyjne.
Jak to zrobić krok po kroku? (Instrukcja dla odważnych!)
- ZRÓB KOPIĘ ZAPASOWĄ PLIKU
wp-config.php
!!! (Mówiłam już? Tak? To powiem jeszcze raz! Ściągnij go sobie na komputer przez FTP, zanim zaczniesz grzebać!). - Połącz się ze swoim serwerem przez FTP (np. programem FileZilla) albo użyj menedżera plików w panelu hostingu.
- Znajdź plik
wp-config.php
. Zwykle znajduje się on w głównym katalogu Twojej instalacji WordPressa. - Otwórz plik
wp-config.php
do edycji w edytorze tekstu (najlepiej takim, który nie dodaje dziwnych formatowań, np. Notepad++ na Windows, Sublime Text, VS Code). Nie używaj Worda ani Notatnika systemowego! - Znajdź linię, która wygląda mniej więcej tak:
/* That's all, stop editing! Happy publishing. */
(Albo po polsku:/* To wszystko, zakończ edycję w tym miejscu! Miłego blogowania! */
) - TUŻ NAD tą linią dodaj dwa nowe wiersze:
define( 'WP_HOME', 'https://twojadomena.pl' );
define( 'WP_SITEURL', 'https://twojadomena.pl' );
- WAŻNE: Zamiast
https://twojadomena.pl
wpisz DOKŁADNY I POPRAWNY adres Twojej strony. Pamiętaj o:http://
lubhttps://
– użyjhttps://
jeśli masz zainstalowany certyfikat SSL (a powinnaś go mieć!).- Bez ukośnika
/
na końcu! – W 99% przypadków nie dodaje się ukośnika na końcu tych adresów. - Bez literówek! Sprawdź dwa razy!
- Jeśli WP masz w podkatalogu (np.
wordpress
), toWP_SITEURL
powinien zawierać ten podkatalog, np.define( 'WP_SITEURL', 'https://twojadomena.pl/wordpress' );
, aWP_HOME
powinien być bez niego:define( 'WP_HOME', 'https://twojadomena.pl' );
.
- Zapisz zmiany w pliku
wp-config.php
i wgraj go z powrotem na serwer przez FTP, nadpisując stary plik (ale masz backup, prawda? 😉).
Co się stanie potem?
Jeśli wszystko zrobiłaś dobrze, Twoja strona powinna zacząć działać pod wskazanymi adresami. Wejdź teraz do panelu admina (Ustawienia -> Ogólne
). Zobaczysz, że pola „Adres WordPressa (URL)” i „Adres witryny (URL)” są szare i nie da się ich edytować. To normalne! Oznacza to, że WordPress odczytuje teraz te wartości z pliku wp-config.php
, a nie z bazy danych.
Na co uważać? (Pułapki!)
- LITERÓWKI! Jeszcze raz – jedna literówka w adresie URL w
wp-config.php
i strona może się kompletnie wysypać. Sprawdzaj uważnie! - HTTP vs HTTPS: Upewnij się, że używasz poprawnego protokołu. Jak masz SSL, to musi być
https://
. - Ukośnik na końcu: Standardowo go nie ma. Dodanie go może czasem (rzadko, ale jednak) powodować problemy z niektórymi linkami lub wtyczkami.
- Pamiętaj o zmianie: Jeśli kiedyś zmienisz domenę albo przeniesiesz pliki WP do innego katalogu, MUSISZ pamiętać, żeby zaktualizować te definicje w
wp-config.php
(albo je usunąć i ustawić adresy przez panel/bazę danych, jeśli już będziesz miała dostęp).
Kiedy NIE warto tego ruszać?
Szczerze? Jeśli Twoja strona działa poprawnie, masz dostęp do panelu admina, nie planujesz żadnych dziwnych konfiguracji z plikami w podkatalogach i nie masz problemów po migracji – to nie ma sensu grzebać w wp-config.php
tylko po to, żeby zdefiniować te stałe. Ustawienia w panelu admina są dla większości użytkowników wystarczające i bezpieczniejsze do modyfikacji. Nie naprawiaj czegoś, co nie jest zepsute!
Podsumowując:
Definiowanie WP_HOME
i WP_SITEURL
w pliku wp-config.php
to potężny trick, który może być wybawieniem w trudnych sytuacjach (awarie, migracje, problemy z SSL). Pozwala też „zabetonować” adresy strony. Ale jak każda zaawansowana opcja, wymaga ostrożności i zrozumienia, co się robi. Pamiętaj o backupach i dokładnym sprawdzeniu adresów URL.
Więc używaj tej wiedzy z głową, Specko! Czasem lepiej zostawić wp-config.php
w spokoju, ale dobrze wiedzieć, że taka opcja istnieje, gdyby zaszła potrzeba interwencji kryzysowej. 😉 Powodzenia!
Dołącz do Przystani Specek – miejsca, gdzie kobiety uczą się budować własne strony, sklepy, platformy kursowe i marki online - bez stresu, w zgodzie z sobą, ze wsparciem mentorki i cudownej społeczności innych Specek.👉 Kliknij i wejdź na pokład