Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
Wordpress durcheigene Plugins erweitern          #wpblogger Hannover               15.02.2012    Frank Staude <frank@staud...
Warum Plugins?•   Unabhängig vom Theme•   Hinzufügen neuer Funktionen•   Entfernen vorhandener Funktionen•   Funktionen er...
Plugins
PluginMindestens eine PHP Datei mit Metadaten                                          4
HooksWordPress basiert auf dem Hook-System.Dieses dient WordPress und allenErweiterungen um Funktionen anbestimmter Stelle...
Filter und Actions2 Arten von Hooks• Filter machen etwas mit dem Inhalt.  add_filter()• Actions reagieren auf Aktionen  ad...
Einfacher Filteradd_filter(Element, Funktion);Siehe Beispiel 1 im Zip mit dem Beispielen.// Einfacher Filter, Alles in kle...
Einfache Aktionadd_action(Action, Funktion);Siehe Beispiel 2 im Zip mit dem Beispielen.// Einfache Aktion. Dem Kopf etwas ...
Einstellung DeaktivierenBeispiel. Die Kategoriezuordnung entfernenSiehe Beispiel 3 im Zip mit dem Beispielen.add_action(ad...
Beispiel: Kategoriezuordnung             ersetzen.Original Wordpress   Eigener DialogDialog
Beispiel: Kategoriezuordnung               ersetzen.Aufgaben um den Kategorie Dialog auszutauschen.• Altes Dialogfeld entf...
Beispiel: Kategoriezuordnung                        ersetzen.Siehe Beispiel 4 (bzw Beispiel 5 als Implementierung in einer...
Beliebte Fehler• DB Prefix  Die Tabellen müssen nicht mit wp_ anfangen.• MultiSite  Du bist nicht zwingend alleine in der ...
BücherDas WordPress-Buch von Frank BültgeErläutert auch kurz das schreiben einesPlugins.Deutsch, 34,90 €WordPress 3 Plugin...
Nächste SlideShare
Wird geladen in …5
×

Wordpress mit eigenen Plugins erweitern

1.169 Aufrufe

Veröffentlicht am

Veröffentlicht in: Technologie
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Wordpress mit eigenen Plugins erweitern

  1. 1. Wordpress durcheigene Plugins erweitern #wpblogger Hannover 15.02.2012 Frank Staude <frank@staude.net>Download der Folie und der Beispiele unter http://www.staude.net/vortrage/
  2. 2. Warum Plugins?• Unabhängig vom Theme• Hinzufügen neuer Funktionen• Entfernen vorhandener Funktionen• Funktionen ersetzen.
  3. 3. Plugins
  4. 4. PluginMindestens eine PHP Datei mit Metadaten 4
  5. 5. HooksWordPress basiert auf dem Hook-System.Dieses dient WordPress und allenErweiterungen um Funktionen anbestimmter Stelle einzubringen. Die Hookssind aber nicht nur zum einhaken, sondernkönnen ebenso in eigene Erweiterungengenutzt werden (Stichwort: do_action() ).
  6. 6. Filter und Actions2 Arten von Hooks• Filter machen etwas mit dem Inhalt. add_filter()• Actions reagieren auf Aktionen add_action() Alle Filter- (Filters) und Tätigkeits-Hooks (Actions) sind auf der Plugin-API-Seite zu finden oder auf dem Blog WordPress Hooks ausführlich erklärt.
  7. 7. Einfacher Filteradd_filter(Element, Funktion);Siehe Beispiel 1 im Zip mit dem Beispielen.// Einfacher Filter, Alles in kleinschrift wandeln.add_filter(the_content, hello_world);function hello_world($content) { return strtolower($content);
  8. 8. Einfache Aktionadd_action(Action, Funktion);Siehe Beispiel 2 im Zip mit dem Beispielen.// Einfache Aktion. Dem Kopf etwas hinzufügen.add_action(wp_head, hello_world);function hello_world() { echo "<script type="text/javascript" > irgendein JS; </script>n";}
  9. 9. Einstellung DeaktivierenBeispiel. Die Kategoriezuordnung entfernenSiehe Beispiel 3 im Zip mit dem Beispielen.add_action(admin_menu, remove_meta_boxes );function remove_meta_boxes() { remove_meta_box(categorydiv, post, normal);}
  10. 10. Beispiel: Kategoriezuordnung ersetzen.Original Wordpress Eigener DialogDialog
  11. 11. Beispiel: Kategoriezuordnung ersetzen.Aufgaben um den Kategorie Dialog auszutauschen.• Altes Dialogfeld entfernen• Neues Dialogfeld hinzufügen• Neues Dialogfeld mit Inhalt füllen• Daten des neuen Dialogs speichern, wenn der Benutzer auf Speichern/Veröffentlichen des Artikels klickt.
  12. 12. Beispiel: Kategoriezuordnung ersetzen.Siehe Beispiel 4 (bzw Beispiel 5 als Implementierung in einer Klasse) im Zip mit dem Beispielen.add_action(admin_menu, my_remove_meta_boxes );add_action(admin_menu, my_plugin_menu);add_action(save_post, my_plugin_savepost);function my_remove_meta_boxes() { remove_meta_box(categorydiv, post, normal);}function my_plugin_menu() { add_meta_box("x_cat", "Kategorie", "my_plugin_htmloutput", "post");}function my_plugin_savepost($post_id) { // Code zum Speichern der Kategorien zum Post}function my_plugin_htmloutput(){ // HTML mit dem Inhalt der neuen Box. In diesem Beispiel // jQuery dynatree mit Inhalt aus den term_taxonomy und terms Tabellen}
  13. 13. Beliebte Fehler• DB Prefix Die Tabellen müssen nicht mit wp_ anfangen.• MultiSite Du bist nicht zwingend alleine in der Site.• Prefixe für Classen/Funktionen Auch andere Pluginprogrammierer können den naheliegendsten Namen wählen.• Kapsel deine Klasse/Funktion mit class_exists / function_exists um zu verhindern das die doppelte Deklaration das ganze System crasht (und normal User es nicht mehr rückgängmachen kann).
  14. 14. BücherDas WordPress-Buch von Frank BültgeErläutert auch kurz das schreiben einesPlugins.Deutsch, 34,90 €WordPress 3 Plugin DevelopmentEssentials von Brian Bondari undEverettGriffiths.English. 36 US$Als Ebook manchmal beim Verlag imAngebot als Bundle mit Wordpress SEOfür zusammen 20 €

×