
🔒 Jak zabezpieczyć hasłem witrynę WordPress: 6 sposobów na strony, kategorie i treści
Strona na WordPress nie jest jeszcze gotowa do uruchomienia, a przypadkowi odwiedzający już widzą treści testowe. Albo uruchomili Państwo zamkniętą sekcję dla klientów i nie chcą, aby osoby postronne czytały Państwa materiały.
Dodanie hasła to najbardziej bezpośrednie rozwiązanie. Bez rejestracji, bez skomplikowanych uprawnień dostępu. Jedno hasło i dostęp otrzymują tylko ci, którym je Państwo przekażą.
Poniżej sześć skutecznych sposobów na zabezpieczenie hasłem całej witryny, pojedynczych stron, kategorii, produktów WooCommerce, a nawet fragmentów tekstu. Od darmowej wtyczki na jedno kliknięcie po precyzyjną konfigurację przez.htaccess.
💡 Szybki przegląd:
- Zainstaluj Password Protected i zamknij całą witrynę jednym hasłem, bez rejestracji i uprawnień dostępu.
- Skonfiguruj ochronę przez cPanel Directory Privacy, metodę bez wtyczek dla hostingów na Apache.
- Ogranicz dostęp do kategorii i produktów WooCommerce za pomocą wbudowanych funkcji lub wtyczek.
- Ukryj fragmenty tekstu przez Passster: odwiedzający widzi część jawną, a część chroniona jest pod hasłem.
- Użyj.htaccess i.htpasswd, pełna kontrola na poziomie serwera dla zaawansowanych.
Dlaczego ochrona hasłem w WordPress jest potrzebna
Najczęstszy scenariusz: strona w budowie. Zmieniają Państwo motyw, testują wtyczki, poprawiają układ, a wyszukiwarki już indeksują wersje robocze. Hasło na całej witrynie rozwiązuje to w minutę: ustawiają je Państwo i tylko Państwo widzą efekt.
Drugi scenariusz: treści zamknięte. Kursy online, płatne materiały, portfolio klientów, wewnętrzna dokumentacja zespołu. WordPress obsługuje hasło na poziomie pojedynczych wpisów od razu po instalacji, a wtyczki rozszerzają tę funkcję na kategorie, produkty i dowolne fragmenty.
Trzeci: stan pośredni. Strona działa, ale część sekcji nie jest jeszcze gotowa. Przekazują Państwo hasło klientowi, on przegląda gotowe strony, a niedokończone widzi dopiero po wpisaniu hasła.
Sposób 1: wtyczka Password Protected, ochrona całej witryny
Najprostszy i najszybszy sposób. Wtyczka Password Protected nakłada jedno hasło na cały front-end: odwiedzający otwiera dowolną stronę i widzi formularz logowania. Po wpisaniu hasła strona działa normalnie. Bez hasła nie widzi nic.

Zainstaluj wtyczkę przez Wtyczki → Dodaj nową, aktywuj i przejdź do Ustawienia → Password Protected. Zaznacz „Password Protected Status" i ustaw hasło w polu „New Password". Koniecznie włącz „Allow Administrators" i „Allow Logged In Users", w przeciwnym razie sami Państwo nie wejdą bez hasła.
Dodatkowo można skonfigurować:
- IP-whitelist, adresy IP, z których hasło nie jest wymagane (biuro, dom);
- Czas życia hasła, hasło przestaje działać po N dniach;
- reCAPTCHA, ochrona przed atakami brute force na formularzu logowania.
Wtyczka jest regularnie aktualizowana: na czerwiec 2026 roku wersja 2.8.1, aktywne instalacje na ponad 200 000 witryn.
Tryb konserwacji: Coming Soon
Jeśli zamiast hasła chcą Państwo pokazać odwiedzającemu stronę zastępczą „Strona wkrótce dostępna", zainstaluj wtyczkę Coming Soon. Nadaje się ona również do trybu konserwacji, „Trwają prace techniczne".

Po aktywacji wejdź w Ustawienia → Coming Soon. Tutaj wybiera się logo, nagłówek, treść komunikatu i favicon. Można podłączyć Google Analytics, ruch na stronie zastępczej będzie uwzględniany. Ważna kwestia: w trybie „Coming Soon" Google indeksuje stronę zastępczą (tytuł i opis), w trybie „Maintenance" nie.
Sposób 2: ochrona przez cPanel bez wtyczek
Jeśli Państwa hosting korzysta z Apache i daje dostęp do cPanel, hasło można ustawić na poziomie serwera, bez żadnej wtyczki.
- Zaloguj się do cPanel, znajdź sekcję Security → Directory Privacy.
- Wybierz folder witryny (zazwyczaj
public_html) i kliknij go. - W oknie, które się otworzy, zaznacz pole „Password protect this directory", nadaj nazwę chronionemu obszarowi i zapisz.
- Poniżej, w bloku „Create User", wpisz login i hasło, kliknij „Add or modify authorized user".
Po tym, przy wejściu na stronę, przeglądarka pokaże standardowe okno HTTP Basic Auth. Metoda nie zależy od WordPressa: ochrona działa przed załadowaniem PHP, więc strona jest „niewidoczna" nawet dla wyszukiwarek.
Minusem jest jedna para login/hasło dla wszystkich. Rozdawanie hasła dziesięciu klientom jest niewygodne. W scenariuszach z wieloma użytkownikami lepiej wrócić do wtyczek ze sposobu 1.
Sposób 3: ochrona kategorii WordPress
Kategorie to wygodny sposób grupowania treści według tematów. Logiczne jest więc chronienie ich w całości, a nie po jednym wpisie.
Domyślny WordPress nie potrafi ustawić hasła na kategorię. Problem rozwiązują wtyczki.
Darmowa ścieżka, Password Protected. Ta sama wtyczka ze Sposobu 1 w wersji Pro potrafi chronić poszczególne kategorie: ustawiają Państwo hasło dla kategorii „Dla klientów" i wszystkie wpisy w niej stają się niedostępne bez hasła. Konfiguracja w znanym interfejsie Settings → Password Protected → Category Protection.
Specjalistyczne narzędzie, Password Protected Categories. Jeśli kategorii jest wiele i każda potrzebuje własnego hasła, proszę spojrzeć na wtyczkę Password Protected Categories od Barn2. Jest ona stworzona właśnie do tego zadania: osobne hasła do kategorii, okres ważności haseł, ukrywanie wpisów z publicznych list. Wtyczka jest premium, ale dla komercyjnych witryn z płatnym dostępem jest to uzasadnione.
Po zainstalowaniu którejkolwiek z wtyczek procedura jest taka sama: tworzą Państwo kategorię w Wpisy → Kategorie, w bloku „Widoczność" wybierają „Chronione hasłem", ustawiają hasło. Gotowe, wpisy w tej kategorii widzą tylko ci, którzy znają hasło.
Sposób 4: hasło dla produktów WooCommerce
WooCommerce pozwala ustawić hasło na produkt za pomocą wbudowanych funkcji, wtyczki nie są potrzebne.
Proszę otworzyć edytor produktu, w panelu bocznym znaleźć blok „Visibility" (ikona oka). Kliknąć „Edit", wybrać „Password protected", wpisać hasło i zatwierdzić.

Po publikacji towar pojawi się w katalogu, ale zamiast ceny i przycisku „Do koszyka" kupujący zobaczy formularz wprowadzania hasła.
Wskazówka: proszę używać tego samego hasła do wszystkich zamkniętych towarów i kategorii. Klient zapamiętuje jedno hasło i od razu uzyskuje dostęp do całej zamkniętej treści, mniej wiadomości do działu wsparcia z pytaniem „a jakie jest hasło?".
Sposób 5: ochrona fragmentów treści przez Passster
Bywa, że nie trzeba zamykać całej strony, a jedynie kilka akapitów lub jeden blok. Wtyczka Passster (Content Protector) rozwiązuje właśnie to zadanie.

Proszę zainstalować wtyczkę, w edytorze pojawi się przycisk „Add Content Protector Shortcode". Proszę zaznaczyć tekst, który chce Pan/Pani ukryć, kliknąć przycisk, ustawić hasło. Na stronie odwiedzający widzi wszystko oprócz chronionego fragmentu, a w jego miejscu pojawia się formularz wprowadzania hasła.
Wtyczka jest aktywna i aktualizowana: według stanu na czerwiec 2026, wersja 4.3.5. Nadaje się do publikacji z „darmowym podglądem": wstęp jest otwarty, a wnioski lub dane są chronione hasłem.
Sposób 6: ochrona przez.htaccess i.htpasswd
Najbardziej elastyczna i „techniczna" metoda. Działa na poziomie Apache, chronią Państwo folder serwera, a nie stronę WordPress. Sprawdzi się, gdy dostęp jest potrzebny ograniczonemu kręgowi osób i nie chcą Państwo instalować wtyczek.
Krok 1. Proszę utworzyć plik 401.html, zobaczy go odwiedzający w przypadku błędnego hasła:
1 AUTHENTICATION REQUIRED 2 You need a username and password to access this area.

Proszę wgrać 401.html do katalogu głównego witryny. Bez niego Apache pokaże pustą stronę z kodem 401, nieestetycznie i nieinformacyjnie.
Krok 2. Proszę dodać reguły w.htaccess folderu, który Państwo chronią:
1 ErrorDocument 401 /401.html 2 AuthName "Password Protected Area" 3 AuthType Basic 4 AuthUserFile /home/user/public_html/.htpasswd 5 Require valid-user

Proszę zastąpić /home/user/public_html/ rzeczywistą ścieżką do Państwa folderu na serwerze. Ścieżkę można sprawdzić w cPanelu (sekcja „Files") lub przez komendę SSH pwd.
Krok 3. Proszę utworzyć.htpasswd z loginami i hasłami. Hasła są przechowywane w postaci zaszyfrowanej. Wpis można wygenerować przez internetowy generator htpasswd lub komendą w terminalu:
1 htpasswd -c .htpasswd username
Proszę wgrać .htpasswd do tego samego folderu, który Państwo chronią. Każdy wiersz pliku to osobny użytkownik. Można dodać kilkunastu klientów z różnymi hasłami, metoda jest skalowalna.
Gotowe. Gdy ktoś spróbuje otworzyć witrynę (lub folder), przeglądarka poprosi o login i hasło z .htpasswd.
Ważne: .htpasswd NIE należy umieszczać w public_html ani udostępniać do niego dostępu przez URL. Proszę przechowywać go poziom wyżej, Apache go odczyta, ale przez przeglądarkę plik będzie nie do pobrania.
Proszę obejrzeć wideoporadnik dotyczący ochrony stron WordPress hasłem, od instalacji wtyczki po konfigurację widoczności poszczególnych wpisów.
Inne wtyczki do kontroli dostępu
Opisane wyżej sposoby wystarczają w większości scenariuszy. Jeśli jednak budują Państwo pełnoprawny serwis członkowski z subskrypcjami i poziomami dostępu, proszę zwrócić uwagę na wtyczki membership:
Simple Membership. Bezpłatna i prosta wtyczka do ochrony wpisów i stron według poziomów członkostwa. Darmowa wersja zamyka treści dla niezarejestrowanych użytkowników, płatne plany dodają płatności cykliczne i integrację z PayPal. Według stanu na czerwiec 2026, wersja 4.7.5, aktywne instalacje na dziesiątkach tysięcy witryn.

🔗 Simple Membership na WordPress.org
s2Member. Weteran wśród wtyczek membership: działa od 2010 roku i wciąż jest aktualizowany. Chroni wpisy, strony, pliki do pobrania, obrazy. W wersji Pro dostępna jest integracja z bramkami płatniczymi. Według stanu na maj 2026, aktualna wersja 260508.

WP-Members, kolejna bezpłatna wtyczka do ograniczania dostępu do treści. Zamyka wpisy, strony i niestandardowe typy wpisów. Sprawdzi się u tych, którzy potrzebują lekkiego narzędzia bez zbędnych dodatków.
Do ochrony kategorii z różnymi poziomami dostępu służy wspomniana wyżej wtyczka Password Protected Categories.
⁉️🤔 Często zadawane pytania
Czy można zabezpieczyć hasłem tylko jedną stronę, a nie całą witrynę?
Tak. Proszę otworzyć edytor strony, w panelu bocznym znaleźć blok „Widoczność", kliknąć „Edytuj" i wybrać „Chronione hasłem". To standardowa funkcja WordPressa, wtyczki nie są potrzebne. Ta sama metoda działa dla wpisów. Ochrona na poziomie pojedynczej strony jest wygodna w przypadku portfolio klientów, prywatnych landing page’y i stron z warunkami współpracy.
Który sposób wybrać, jeśli witryna jest na Nginxie, a nie na Apache?
Sposoby 1, 4 i 5 działają niezależnie od serwera WWW, są na poziomie WordPressa. Sposób 2 (cPanel Directory Privacy) i sposób 6 (.htaccess) tylko dla Apache. Na hostingu Nginx analogiczną ochronę konfiguruje się przez dyrektywy
auth_basiciauth_basic_user_filew konfiguracji serwera, zwykle robi się to przez dział wsparcia hostingu.
Czy ochrona hasłem wpływa na SEO?
Tak. Jeśli cała witryna lub strona jest zamknięta hasłem, wyszukiwarka nie zaindeksuje treści. Dla witryny w budowie to plus: wersje robocze nie trafiają do wyników wyszukiwania. Jeśli natomiast hasłem zamknięta jest tylko część strony (Passster), reszta tekstu jest indeksowana normalnie. Tryb „Coming Soon" z wypełnionymi polami SEO pozwala zaindeksować stronę tymczasową przed uruchomieniem.
Co jest bezpieczniejsze, wtyczka czy.htaccess?
.htaccess działa na poziomie serwera przed uruchomieniem PHP, luka we wtyczce czy WordPressie go nie omija. Wtyczka jest prostsza w konfiguracji, ale dodaje kod, który trzeba aktualizować. Do zadań niekrytycznych (witryna w budowie) proszę wybrać wtyczkę. Do danych wrażliwych (baza klientów, dokumenty wewnętrzne).htaccess.
Czy można ustawić różne hasła dla różnych użytkowników?
Tak. W sposobie 6 (.htpasswd) każda linia to osobny użytkownik z własnym hasłem. We wtyczkach membership (Simple Membership, s2Member) każdy użytkownik rejestruje się i loguje na swoje konto, a wtyczka decyduje, jakie treści są dla niego dostępne. Do prostych scenariuszy „jedno hasło dla wszystkich" wystarczy wtyczka Password Protected.
Który sposób ochrony wybrać?
Nie ma jednego „właściwego" sposobu, wszystko zależy od scenariusza:
Witryna w budowie, proszę zainstalować Password Protected i zapomnieć. Jedno hasło, pełna blokada frontendu, panel administracyjny otwarty.
Potrzebna jest strona tymczasowa zamiast hasła, Coming Soon. Pokazują Państwo logo, opis projektu i „wkrótce otwieramy".
Kilku klientów z różnymi hasłami, własny serwer,.htaccess +.htpasswd. Żadnych wtyczek, pełna kontrola na poziomie Apache.
Sklep na WooCommerce, część produktów dla swoich, standardowa ochrona hasłem każdego produktu. Jedno kliknięcie w edytorze.
Zamknięta sekcja dla subskrybentów, Simple Membership lub s2Member. Użytkownicy rejestrują się i widzą treści swojego poziomu.
Płatna kategoria z kilkunastoma artykułami, Password Protected Categories od Barn2. Jedno hasło na całą kategorię.
Proszę zacząć od prostego rozwiązania: zainstalować Password Protected, zamknąć witrynę na czas budowy i sprawdzić, na ile wystarczają Państwu jego możliwości. Proszę komplikować w miarę wzrostu wymagań, a nie odwrotnie.



