WordPress: Blog für Gäste und registrierte Nutzer unterschiedlich anzeigen
Wenn man WordPress als Blog oder CMS betreibt, ermöglicht man den Besuchern oftmals auch die Möglichkeit der Registrierung. In den allermeisten Fällen beschränkt sich dies dann für den Kommentarbereich (z.B. sofortige Freischaltung von Kommentaren) ohne weitere Benefits auf der Seite. Warum sollte der neue Leser also eine Registrierung durchführen?
Allerdings könnte man zukünftige Stammuser auch mit versteckten Infobereichen und/oder weniger Werbung locken. Die Möglichkeiten sind vielfältig, der Kreativität sind keine Grenzen gesetzt. Wie man mit ganz simplen Methoden z.B. Werbebanner ausblenden oder durch andere Inhalte ersetzen kann, erklären wir nachfolgend an 2 Beispielen:
Welche Variablen tatsächlich sinnvoll einzusetzen sind, darüber wird noch gestritten. Es existiert im WP-Core zum einem die Möglichkeit, die User_ID auslesen zu lassen und zum anderen einfach nur zu prüfen, ob der User angemeldet ist.
Im 1. Beispiel prüfen wir die User-ID und können so jeweils für angemeldete und nicht angemeldete User unterschiedliche Inhalte anzeigen lassen. Beispielsweise könnten Gäste einen Werbebanner sehen, angemeldete User sehen einen weiteren Contentbereich, Headlines eines Feeds, einen internen Banner, etc. Der Platz wird also aufgefüllt, das Seitendesign unter Umständen nicht zerissen.
<?php if ( $user_ID ) : global $user_identity; ?> INHALT FÜR ANGEMELDETE USER <?php else : ?> INHALT FÜR GÄSTE <?php endif; ?>
Im 2. Beispiel wird einfach nur geprüft ob der User angemeldet ist oder nicht. Ist es ein Gast, wird ein Inhalt eingefügt, z.B. ein Javascript mit einem Werbelayer oder einer anderen Funktion oder auch ein Banner vor oder nach einem Eintrag. Angemeldete User sehen dann rein gar nichts. Im Quellcode ist davon rein gar nichts zu finden.
<?php if (!is_user_logged_in()) { ?>
INHALT FÜR GÄSTE / USER SEHEN NICHTS
<?php } ?>
Die Funktion beschreibt: “wenn User nicht angemeldet ist”. Analog dazu kann man auch den Content für angemeldete Nutzer erweitern und diesen z.B. interne Aktionen, Links, etc. sichtbar machen. Also “wenn User angemeldet ist”. Der Unterschied liegt nur an dem Ausrufezeichen in der ersten Codezeile:
<?php if (is_user_logged_in()) { ?>
INHALT FÜR ANGEMELDETE USER / GÄSTE SEHEN NICHTS
<?php } ?>
Multiple Anwendungsbeispiele sind hier möglich. Zudem kann man es auch noch nach Benutzerlevel erweitern oder auch auf sich selbst beschränken, in dem man die Funktion auf die eigene User-ID spezifiziert. Oder man kann einem “bösen User” den Kommentarbereich ausblenden, nur Autoren bestimmte Links sichtbar machen, Gästen mit dem Abonnement eines Newsletters locken, Angemeldete User besonders begrüssen und so weiter und so fort.
Mit den obigen Parametern hat man fast alle Möglichkeiten in der Hand. Zur Funktion wp_get_current_user gibt es auch Informationen direkt im WordPress Codex.




0
