WordPress Theme in Abhängigkeit der Benuzter-ID oder Remote Adresse

Die Zeiten ändern sich.

Dieser Beitrag scheint älter als 16 Jahre zu sein – eine lange Zeit im Internet. Der Inhalt ist vielleicht veraltet.

If you want the information in english – please have a look on this this page.

In einigen Bereichen ist es erforderlich, dass bestimmte User – identifizierbar über die WordPress-ID oder eine IP-Adresse – eine andere Oberfläche bekommen. Der Zugriff soll also mit einem anderen Theme gestaltet werden.

Ich habe mir dazu eine kleine und einfache, aber wirkungsvolle Lösung überlegt – via Plugin. Dort identifiziere ich die User und lade dann das entsprechende Theme.

Das Plugin ist recht einfach im Code strukturiert und kann von jedem, der es benötigt angepasst werden. Es werden keinerlei Daten in der Datenbank abgelegt, die ID oder die IP des Users muss also im Code des Plugins hinterlegt werden. Für andere Anwendungen ist sicher eine ganze Menge Spielraum verfügbar.

Anforderungen

Das Plugin wurde unter WP 2.3 getestet, sollte aber aber auch Versionen kleiner und größer Version 2.3 laufen.

Was macht das Plugin?

Das Plugin lädt auf Basis der User-ID, Benutzerrechte oder IP ein spezielles Theme. Die Benutzer-ID, das Userlevel (Admin ist 10) oder IP des Benutzers muss im Code hinterlegt werden. Das Theme wird auf Basis des Namens geladen, dabei ist zu beachten, dass WordPress die Leerzeichen im Namen mit _ (underline) ersetzt.

Installation

  1. Paket downloaden und lokal entpacken
  2. Datei im Editor öffnen und Theme-Name und Benutzer-ID bzw. IP einpflegen
  3. Kopiere die Datei in das Plugin-Verzeichnis deiner Installation (wp-content/plugins/)
  4. Das Plugin im Admin-Bereich aktivieren

Download:

Ist die Arbeit nicht 1 Euro wert?
Jede Spende wird dankbar angenommen und ermöglicht das weitere Arbeiten an freier Software.
Möchtest du mehr oder anders spenden, so besuche meine Wunschliste.

Download als php-Datei: wordpress.org/extend/plugins/user-theme/user-theme.zip – 1 kByte

Von Frank Bültge

bueltge.de [by:ltge.de] wird von Frank Bültge geführt, administriert und gestaltet. Alle Inhalte sind persönlich von mir ausgewählt und erstellt, nach bestem Gewissen und Können, was die Möglichkeit von Fehlern nicht ausschließt.

71 Kommentare

  1. Dann müsste man aber das Plugin aufbohren ;-), aber machbar. Wobei ich dann lieber standardisierte IDs und CLASSs vergeben würde, so dass man mit Userstyles per Browser arbeitet.

  2. Hallo, kann man das Plugin auch so „einstellen“, dass es nicht wie hier oben genannt zwischen verschiedenen Themes switcht, sondern zwischen „Admin eingeloggt“ = Blogartikelvorschau, d.h. neu erstellte Artikel werden via „Beitragsvorschau“ für den eingeloggten Admin dargestellt, und auf der anderen Seite: „ausgeloggte User“ = Wartungsmodus (mit deinem hier auch vorgestellten Plugin „Wartungsmodus“)?

  3. @Christina: verstehe ich das richtig? Du willst einen Artikel schreiben, speichern, nicht veröffentlichen, dann im Forntend via Vorschau ansehen und das Blog ist aber eigentlich im Wartungsmodus?
    Das Plugin Wartungsmodus läßt alle nicht eingeloggten User den Wartungsmodus-Screen sehen, alle user, die Rechte zum Ändern des Themes haben, also Admins, können die Artikel in der Vorschau im Frontend sehen.

  4. Danke, das war ein Fehler meinerseits, habe ich jetzt erst dank Forum entdeckt: ich hatte in WP unterschiedliche URLs angegeben für die WP-Installation und den Blog an sich … irgendein „Kuddelmuddel“ aus Subdomain und Umleitung, darum war das Frontend (mit anderer URL) nie eingeloggt, während es das Backend (mit wieder anderer URL) jedoch war. Das war genau das Problem. Ich hab jetzt in den WP-Einstellungen beide URLs gleich gesetzt und nur in meiner Domain-Konfiguration es anders umgeleitet. Jetzt geht alles einwandfrei: User sehen den Wartungsmodus und ich als eingeloggter Admin kann dennoch meinen Blog ansehen – vorher zeigte es da auch für mich den Wartungsmodus an.

  5. hi there .thanks for plugin:

    Does anybody know if tis script is compatible with WordPress 2.5.1 ?

    Thanks in advance for any help on this!

    regards

Kommentare sind geschlossen.