smart | Webentwicklung
Alles rund um HTML5, PHP, WordPress & Co.

WordPress: Template für passwortgeschütze Seite erstellen

7. Juli 2013
Stephan
WordPress: Individuelles Template für passwortgeschütze Seite erstellen

Wer in WordPress eine Seite als passwortgeschützt veröffentlicht, der möchte diese eventuell auch individuell gestalten.

Beispielsweise könnte es sein, dass ihr den Standardtext „Dieser Beitrag ist passwortgeschützt. Um ihn anzusehen, trage das Passwort bitte hier ein:“ ändern möchtet.

Um dieses zu bewerkstelligen findet ihr im Internet oft Codeschnipsel, die ihr in eure functions.php einfügt.

In diesem Artikel zeige ich euch, wie ihr alternativ mit der Erstellung eines eigenen Templates eure passwortgeschützte Seite anpassen könnt.

Template erstellen

Für unser Template legen wir in unserem Theme-Verzeichnis eine Datei namens page-password-protected.php an. Der eigentliche Inhalt des Template könnte dann z.B. so aussehen:

<?php
/* 
* Template Name: Passwortgeschütze Seite
*/ 

get_header();
if(have_posts())
{
	while(have_posts())
	{
		the_post(); ?>
		<article>
			<h2><a href="<?php the_permalink() ?>" title="Seite: <?php the_title(); ?>"><?php the_title(); ?></a></h2>
			<?php if(post_password_required()) { ?>
				<p>
					Hier könnt ihr euren Besuchern mitteilen, dass zur Ansicht der Seite ein Passwort nötig ist. 
				</p>
				<form method="post" action="http://www.dein-blog.de/wp-login.php?action=postpass">
					<fieldset>
						<legend>Anmeldung</legend>
						<label for="pwbox-<?php the_ID(); ?>">Passwort:</label>
						<input id="pwbox-<?php the_ID(); ?>" type="password" name="post_password"/>
					</fieldset>
					<p>
						<input type="submit" value="Anmelden" name="Submit" />
					</p>
				</form>
			<?php } else { ?>
				<?php the_content(); ?>
			<?php } ?>
		</article>
	<?php
    }
}
get_sidebar();
get_footer(); 
?>

Dieses Template könnt ihr nun nach Belieben anpassen und erweitern. Wichtig ist nur, dass ihr in Zeile 18 bei action die richtige URL eures Blogs angibt.

Template im Admin-Bereich auswählen

Jetzt müsst ihr eurer passwortgeschützten Seite nur noch das erstellte Template zuweisen. Hierfür im Admin-Bereich eures WordPress-Blogs eure Seite auswählen und in der rechten Sidebar das Template „Passworgeschützte Seite“ auswählen:

Template für passwortgeschützte Seite auswählen

Fazit

Anstatt eure passwortgeschützte Seite durch Codeschnipsel in der functions.php anzupassen, geht das Ganze auch übersichtlicher durch die Erstellung eines Templates. Daduch könnt ihr außerdem sehr einfach verschiedene Templates erstellen, so dass ihr mehrere passwortgeschützte Seiten verschieden gestalten könnt.

Benutzt ihr passwortgeschützte Seiten? Habt ihr diese auch versucht individuell zu gestalten und wenn ja, wie?

Kommentare  
12 Kommentare vorhanden
1 Alicia schrieb am 10. Juli 2013 um 15:33 Uhr

Hab bisher noch nie daran gedacht, eine Seite mit Passwort zu schützen. Das einzige was ich mal als Plugin gesehen habe ist, das man nur den vollständigen Text sehen kann, wenn man angemeldet ist.

2 Vervum schrieb am 15. Juli 2013 um 10:06 Uhr

Danke für diese kurze und interessante Zusammenfassung!

3 Martin schrieb am 16. Juli 2013 um 15:58 Uhr

Für Zeile 18 kann man auch besser eine Variable nutzen. Zum Beispiel:

http://codex.wordpress.org/Function_Reference/get_site_url

Dann sollte es auch ohne Anpassung in jedem Kontext funktionieren. Oder einfach direkt einen relativen, statt dem absoluten Pfad verwenden.

4 Dachdecker Berlin schrieb am 24. Juli 2013 um 14:59 Uhr

Bis Heute habe ich es noch garnicht in erwägung gezoge eine meiner Seiten mit einem Passwort zu schützen…
Habe erst einige andere PlugIns kennengelernt und ausprobiert!

Lg

5 vecitus schrieb am 2. August 2013 um 11:47 Uhr

Der Artikel ist echt interessant! Weiter so 🙂

6 Bitskin schrieb am 2. August 2013 um 17:08 Uhr

Danke für den kurzen und pragmatischen Leitfaden 🙂

7 Ulrich Eckardt schrieb am 18. August 2013 um 12:35 Uhr

Hi,

vielen Dank für den Artikel. Was passiert bei einem Update? Wäre es nicht besser das ganze mit einem Plugin zu lösen, sofern es eins gibt?

Grüße

Ulrich

8 Stephan L. schrieb am 20. August 2013 um 19:40 Uhr

Hallo Ulrich,

kommt auf das Update an. Bei einem WordPress-Core-Update passiert nichts, weil die Datei in deinem Theme-Ordner abgelegt ist. Bei einem Theme-Update kann es möglicherweise zu Problemen kommen. Ehrlicherweise erstelle ich meine WordPress-Themes immer selbst, so dass ich von der Seite her keine Erfahrung habe, wie es mit gekauften Themes ist, die dann auch mal geupdated werden.

Um deine Antwort zu beantworten: Ja, um jeglichen Problemen bei einem Update vorzubeugen, ließe sich das ganze auch bequem per Plugin umsetzen.

Grüße

Stephan

9 Uli schrieb am 23. Juni 2015 um 16:40 Uhr

Leider funktioniert es bei mir nicht ganz. Alles wird so wie beschrieben abgebildet, nur kann ich mich über das gewählte Passwort nicht einloggen. Wenn ich hingegen das Standardtemplate wieder verwende, funktioniert das Einloggen.
Ich benutze das Theme „Virtue“. Der Blog heißt http://www.knisterblister.de Die zu schützende Seite ist „Über Knisterblister.

10 Jo schrieb am 26. Juni 2015 um 09:35 Uhr

Prima, das habe ich gesucht! Ich habe vereinzelt passwortgeschützt Seiten und will dort im Text Passworthinweise geben, um einerseits nicht immer Passwörter herumschicken und es andererseits den Usern zu ersparen, sich anmelden zu müssen.

11 Horst schrieb am 19. Juli 2015 um 03:38 Uhr

Danke für den interessanten Beitrag. Jetzt kann ich mich selber einmal daran versuchen, weil diese Erklärung kapiere sogar ich

12 Dennis schrieb am 11. Januar 2016 um 00:30 Uhr

Antwortest du auch mal auf Kommentare?
Wie auch bei einem anderen User, funktioniert deine Lösung leider nicht… Immer wenn man das Passwort eingibt, wird man nicht zum Content weitergeleitet sondern wird erneut zur Eingabe des Passwortes aufgefordert.

0 Trackbacks/Pingbacks vorhanden
Du bist herzlich eingeladen auch ein Kommentar zu hinterlassen!
Kommentar schreiben

Vielen Dank für dein Kommentar!