Zabezpieczenie posta hasłem

Zabezpieczenie wpisu hasłem

Zdarzyła ci się sytuacja, kiedy chciałeś ukryć swój post przed większością czytelników, a udostępnić go tylko wybranym osobom? W dzisiejszym poradniku pokażę, jak wykonać zabezpieczenie wpisu hasłem, dzięki czemu tylko osoby, którym podasz dane dostępowe będą mogły przeczytać treść na blogu WordPressa.

Jak zabezpieczyć wpis hasłem?

W oknie edycji postu, po prawej stronie powinieneś zobaczyć opcje Dostępności. Standardowo ta funkcja jest ustawiona na widoczność publiczną. To znaczy, że po publikacji, wszyscy będą mogli zobaczyć twój wpis.

Kiedy klikniesz Edytuj powinieneś zobaczyć inne opcje takie jak Zabezpieczone hasłem czy Prywatne. Wystarczy teraz, że wprowadzisz swoje hasło w odpowiednie pole i twój post będzie niedostępny dla osób, którym go nie udostępnisz.

 

Post chroniony hasłem WordPress

 

Zabezpieczony hasłem post będzie widoczny od tej chwili tylko dla osób, którym podasz swoje hasło. Posty prywatne są widoczne tylko dla zalogowanych użytkowników o roli przynajmniej Redaktora, lub Administratora. W taki sam sposób możesz ukryć również strony na swoim blogu.

Zabezpieczone hasłem posty będą jednak mogły być widoczne na stronie głównej bloga, a także w archiwach tagów, czy kategorii. Jeśli nie chcesz, aby tak się stało, musisz dodać kilka linijek kodu do swojego pliku functions.php.

// funkcja ukrywajaca chronione posty

function exclude_protected($where) {
	global $wpdb;
	return $where .= " AND {$wpdb->posts}.post_password = '' ";
}

function exclude_protected_action($query) {
	if( !is_single() && !is_page() && !is_admin() ) {
		add_filter( 'posts_where', 'exclude_protected' );
	}
}

// Dodanie filtra wyswietlania chronionych postow
add_action('pre_get_posts', 'exclude_protected_action');

To wszystko, ukryte strony i wpisy nie będą już widoczne dla niechcianych osób. Wyślij link do chronionego wpisu wszystkim tym, którzy mają go przeczytać.

A co jeśli chcesz, żeby chronione hasłem wpisy były dostępne dla niezalogowanych użytkowników? W tym przypadku z pomocą przychodzi odpowiednia wtyczka taka, jak Password Protected. Po pobraniu i instalacji wtyczka musi być oczywiście włączona. Jeśli napotkasz problemy z konfiguracją, to zapytaj w komentarzach.

 

Aktualizacja:

Standardowo po wpisaniu hasła post jest „odbezpieczony” przez 10 dni i można to zmienić przez użycie funkcji

apply_filters( 'post_password_expires', $time );

Jeśli wartość czasu będzie ustawiona jako 0, to ważność hasła wygaśnie razem z sesją (po wylogowaniu).

 

 

Rate this post