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 durch eigene Plugins erweitern

478 Aufrufe

Veröffentlicht am

Wordpress durch eigene Plugins erweitern.
Vortrag #wpblogger Hannover
15.02.2012

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

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

Wordpress durch eigene Plugins erweitern

  1. 1. Wordpress durch eigene 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. Plugin Mindestens eine PHP Datei mit Metadaten 4
  5. 5. Hooks WordPress basiert auf dem Hook-System. Dieses dient WordPress und allen Erweiterungen um Funktionen an bestimmter Stelle einzubringen. Die Hooks sind aber nicht nur zum einhaken, sondern können ebenso in eigene Erweiterungen genutzt werden (Stichwort: do_action() ).
  6. 6. Filter und Actions 2 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 Filter add_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 Aktion add_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 Deaktivieren Beispiel. Die Kategoriezuordnung entfernen Siehe 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 Dialog Eigener Dialog
  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ücher Das WordPress-Buch von Frank Bültge Erläutert auch kurz das schreiben eines Plugins. Deutsch, 34,90 € WordPress 3 Plugin Development Essentials von Brian Bondari undEverett Griffiths. English. 36 US$ Als Ebook manchmal beim Verlag im Angebot als Bundle mit Wordpress SEO für zusammen 20 €

×