Pages als Lieferanten für Widgets
Ein einfacher Weg für Redakteure Text-Widgetszu editieren
Dietrich Koch http://internetdienste-berlin.de
© Dietrich Koch internetdienste-berlin.de 1
Einige Mittel des einfachen Editierens
� Frontend-Editoren - z. B. Plugins von scribu, djarzyna…?
� Posting by E-Mail - unterstützt durch das Plugin Postie
� Editor Styles - mit Hilfe von Advanced TinyMce können die Autoren/Redakteure auf eine Auswahl von Stylings festgelegt werden
� editor-style.css - durch Anpassung dieser Datei kann man den TinyMce an das Frontend angleichen
� Anpassung des Administrationsbereichs an die Bedürfnisse des Redakteurs - am besten unterstützt durch das Plugin Adminimizevon Frank Bültge
� Ajax-basierte Seitenbäume im Administrationsbereich - am besten unterstützt durch das Plugin Admin Menu Tree Page View
� Und zum Schluss mein Thema: die Bedienung der Widgets durch Pages
© Dietrich Koch internetdienste-berlin.de 2
Anwendungen für Widgets
�„ewige“ Inhalte – Menüs, Adressen, Logos,
Telefonnummer,..
�Sich selbständig erneuernde Inhalte –Kalender, letzte Artikel
�Öfter zu pflegende Inhalte – Bilder,
Slideshows, Werbebanner, Linklisten, …
© Dietrich Koch internetdienste-berlin.de 3
Kundenanforderungen
�Menüstrukturen
�Slideshows
�Werbebanner
�Videos
�Linklisten
�Umfragen
�Marquee
© Dietrich Koch internetdienste-berlin.de 4
Beispiel
© Dietrich Koch internetdienste-berlin.de 5
© Dietrich Koch internetdienste-berlin.de 6
© Dietrich Koch internetdienste-berlin.de 7
Widgets für die Kommunikation mit
Pages vorbereiten
1. Text-Widgets müssen shortcodes verstehen
2. Eine Kommunikationsfunktion muss definiert
werden
zu 1. Einsatz eines Filters in der functions.php:
add_filter('widget_text', 'do_shortcode');
Zu 2. Die Kommunikationsfunktion liest den
Seiteninhalt einer zugeordneten Seite aus oder
die Attachments
© Dietrich Koch internetdienste-berlin.de 8
Kommunikationsfunktion
Seiteninhalt wird ausgelesen:
function dk_get_content($post_id){
$post = get_post($post_id);
$content = $post->post_content;
echo $content;
}
add_shortcode ( 'cont','dk_get_content ');
© Dietrich Koch internetdienste-berlin.de 9
Kommunikationsfunktion als Plugin
add_shortcode ('cont','dk_get_content');
function dk_get_content($attr){
$post = get_post($attr['id']);
$content = $post->post_content;
return do_shortcode($content);
};
© Dietrich Koch internetdienste-berlin.de 10
Kommunikationsfunktion
Attachments werden "ausgelesen"
Beispiel: NIVO-Slider
[nivo theme=oik post_parent=10694 trans=fade
pause=10000 caption=n page=12]
© Dietrich Koch internetdienste-berlin.de 11
Inhalt des Widgets
© Dietrich Koch internetdienste-berlin.de 12
[nivo theme=oik post_parent=10539
trans=fade pause=1500 caption=n ]
Text und/oder Bilder für ein Widget
© Dietrich Koch internetdienste-berlin.de 13
Linklisten direkt im Widget:
© Dietrich Koch internetdienste-berlin.de 14
Linkliste in der Seite
�Linklisten
Auf der Hilfsseite:
© Dietrich Koch internetdienste-berlin.de 15
Beispiele
© Dietrich Koch internetdienste-berlin.de 16
Pages als Lieferanten für …
�Posts
�Pages
�kurz: all Eingabefelder, die einen Shortcode
interpretieren können
© Dietrich Koch internetdienste-berlin.de 17
Dokumentation
1. Durchnummerierung der Hilfsseiten
2. Screenshot der Seite(n) mit Nummerierung der Widgets entsprechend der zugeordneten Hilfsseiten
3. Optional: Verwendung des page-Parameters zum Rückverweis auf die Hilfsseite
4. Optional: html-Kommentar im Widget mit Rückverweis auf die Hilfsseite
5. Optional: Kommentierung auf der Seite, wenn nur Attachments zu den Widgets kommuniziert werden.
© Dietrich Koch internetdienste-berlin.de 18
Durchnummerierung der Hilfsseiten
© Dietrich Koch internetdienste-berlin.de 19
page_id Erkennung
© Dietrich Koch internetdienste-berlin.de 20
Weiteres
�Nutzererfahrung
�Nutzung von Banner-Plugins statt Text-
Widgets für Werbung (Adrotate z.B.)
© Dietrich Koch internetdienste-berlin.de 21
Zusammenfassung
� Um Text-Widgets einfach editieren zu können und den
Redakteuren einen indirekten Zugriff zu ermöglichen, wird zu
jedem Widget eine Seite/Page erzeugt, die den Inhalt des
Widgets verwaltet.
� Das zugeordnete Widget liest diese Seite aus, entweder die
Attachments um z. B. Slideshows zu erzeugen oder den Inhalt
für Texte und Bilder
� Das Auslesen wird durch einen Shortcode angestoßen. Die
Widgets müssen also Shortcodes auswerten können. Der
Shortcode wird in der functions.php oder durch ein Plugin
erzeugt.
© Dietrich Koch internetdienste-berlin.de 22
Zusammenfassung
�Der Kunde/Redakteur erhält einen Screenshot seiner Seite(n), auf dem die betroffenen Widgetsdurchnummeriert sind. Mit der gleichen Nummer sind die zugeordneten Seiten versehen.
� Im Shortcode wird die ID der zugeordneten Seite benötigt. Zum einfachen Auslesen (kein Reload)dieser ID wird die Nutzung des Plugins Admin Menu Page Tree View empfohlen.
�Die Technik kann für jedes Eingabefeld, das Shortcodes interpretieren kann, angewendet werden.
© Dietrich Koch internetdienste-berlin.de 23