Entwickeln mit Wordpress

1.641 Aufrufe

Veröffentlicht am

Michael Sebel zeigt wie man ein Blog – oder ein Blog eines Kunden – mit Shortcodes, Filtern, Actions, Widgets, Themes und Theme Features sowie eigenen Admin-Menüstrukturen, Backends, Page Templates und ein bisschen Ajax individualisieren kann.

Code Beispiele Download:
http://static.blog.blogwerk.com/files/wp-development.zip

Veröffentlicht in: Technologie, Business
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

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

Keine Downloads
Aufrufe
Aufrufe insgesamt
1.641
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
83
Aktionen
Geteilt
0
Downloads
4
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Entwickeln mit Wordpress

  1. 1. Entwickeln mit Wordpress<br />WordcampSwitzerland 2011<br />Michael Sebel<br />Blogwerk AG<br />07. Mai 2011<br />
  2. 2. Was machen wir den heute?<br />Das Pluginsystem<br />Funktionen oder Klassen<br />Hooks: Grobes Geschütz<br />Shortcodes<br />Sidebars / Themes<br />Widgets für die Sidebar<br />Back-/Frontend Ajax<br />Backend Module/Menus<br />
  3. 3. Das Pluginsystem<br />Ordner & File erstellen, Kommentar, fertig:<br />In „wp-content/plugin“ File.php oder Ordner/File.php erstellen<br />Im File einen Kommentar erstellen<br />
  4. 4. Das Pluginsystem<br />Beispiel eines Pluginkommentares<br /><?php<br />/*<br />Plugin Name: My_Example_Plugin<br />Plugin URI: http://blogwerk.com<br />Description: Beispielplugin fürs Wordcamp<br />Author: Michael Sebel<br />Version: 1.0#1<br />Author URI: http://blogwerk.com<br />*/<br />
  5. 5. Das Pluginsystem<br />Und schon erscheint das Plugin in der Liste<br />Alle Kommentare: http://codex.wordpress.org/Writing_a_Plugin#Names.2C_Files.2C_and_Locations<br />
  6. 6. Klassen oder Funktionen<br />Wer kann sollte mit Klassen programmieren<br />Die Vorteile<br />Autocomplete, auch von Wordpress Objekten<br />Bessere Code Strukturierung<br />Registrierung von Autoloadern möglich (GrösserePlugins)<br />Freiheit im Naming von Funktionen<br />Vorteile die OOP bietet (Abstraktion, Interfaces)<br />
  7. 7. Klassen oder Funktionen<br />Beispiel 1:<br />Autovervollständigung mit Klassen<br />Beispiel 2:<br />Einfacher Autoloader<br />* Download der Code-Beispiele auf letzter Folie<br />
  8. 8. Hooks: Grobes Geschütz<br />Actions<br />Wenn bestimmte „Dinge“ in Wordpress geschehen<br />Primär zum ausführen von Code an bestimmtem Stellen<br />Liste aller Actions: http://codex.wordpress.org/Plugin_API/Action_Reference<br />Filter<br />Wenn bestimmte „Dinge“ verändert werden können<br />Um Daten vor/nach Speicherung/Anzeige zu ändern<br />Bekanntes Beispiel: Spamfilter<br />Liste aller Filter: http://codex.wordpress.org/Plugin_API/Filter_Reference<br />
  9. 9. Hooks: Grobes Geschütz<br />Mit „do_action“ und „apply_filter“ können auch problemloseigene Wordpress Filter definiert werden<br />Actions/Filter sind fast überall zu finden<br />Grundstein, damit wird irgendwo Code iniizieren und somitFeatures, Menus, Backends und Frontends entwickeln können<br />Das Verhalten von Wordpress kann an vielen Ecken und Kanten verändert werden.<br />Schwierigkeit liegt in der Reihenfolgeund…… im Herausfinden welche/r Action/Filter geeignet ist<br />
  10. 10. Hooks: Grobes Geschütz<br />Beispiel 1:<br />Anwendung einiger wichtiger Actions<br />Beispiel 2:<br />Sinnvolle Anwendung eines Filters (Spamcheck)<br />* Download der Code-Beispiele auf letzter Folie<br />
  11. 11. Shortcodes<br />Codes die im Editor angewendet werden können<br />Syntax: [tag_name]<br />Attribute: [tag_name attr1=“wert1“ attr2=“attr3“]<br />Einschliessen: [tag_name]Irgend ein Text[/tag_name]<br /><?php<br />add_shortcode('hello_box',‘my_hello_box');<br />function my_hello_box($args,$content) {<br /> // $html generierenmitetwas Code hier…<br />return($html);<br />}<br />
  12. 12. Sidebars / Themes<br />Definition einer Sidebar (z.B. in der functions.php)<br /><?php<br />register_sidebar(array(<br /> 'name' => 'Sidebar (Aktuelles)',<br /> 'id' => 'sidebar-news',<br />));<br />Anwendung in einer Themedatei / Pagetemplate<br /><ulclass="sidebar"><br /> <?phpdynamic_sidebar('sidebar-news'); ?><br /></ul><br />
  13. 13. Sidebars / Themes<br />Neue Sidebar erscheint im Backend<br />
  14. 14. Widgets für die Sidebar<br />Widgets sind als Klassen umzusetzen<br />Einfache Einstellungsdialoge<br />Mehrfach in verschiedenen Sidebars verwendbar<br /><?php<br />// PHP > 5.3 müssen “create_function” verwenden<br />add_action('widgets_init', function() { return register_widget('My_Widget');});<br />* Download der Code-Beispiele auf letzter Folie<br />
  15. 15. Back- und Frontend Ajax<br />Ajax über „/wp-admin/admin-ajax.php“<br />Unterschiedliche Calls für eingeloggte/nicht eingeloggte User<br />Kein Plugin (mehr) nötig, geht out-of-the-box<br />Beispiel 1:<br />Basis für einen Ajax Request<br />* Download der Code-Beispiele auf letzter Folie<br />
  16. 16. Questions / Downloads<br />Fragen? Anregungen?<br />Downloads<br />http://static.blog.blogwerk.com/files/wp-development.zip(Codebeispiele)<br />

×