de 10 geboden van wordpress development
DESCRIPTION
Mijn slides van de presentatie tijdens WordPress Meetup Enschede 2013 bij TriMMTRANSCRIPT
![Page 1: De 10 geboden van WordPress Development](https://reader033.vdocuments.net/reader033/viewer/2022052901/5566670ad8b42a3d3f8b4ca4/html5/thumbnails/1.jpg)
Welkom
![Page 2: De 10 geboden van WordPress Development](https://reader033.vdocuments.net/reader033/viewer/2022052901/5566670ad8b42a3d3f8b4ca4/html5/thumbnails/2.jpg)
Programma
• De 10 geboden van WordPress Development
– Floris P. Lof
• WordPress op nginx en FastCGI
– Wouter Oosterveld
• WordPress 3.5 ‘Elvin’ -> medialibrary
– Marko Heijnen
• Noaproat…
• Borrel
![Page 3: De 10 geboden van WordPress Development](https://reader033.vdocuments.net/reader033/viewer/2022052901/5566670ad8b42a3d3f8b4ca4/html5/thumbnails/3.jpg)
Floris P. Lof
Webdeveloper bij
TriMM Internet Reality
Technisch blogger bij WPRealm.com
Twitter: @__jester
![Page 4: De 10 geboden van WordPress Development](https://reader033.vdocuments.net/reader033/viewer/2022052901/5566670ad8b42a3d3f8b4ca4/html5/thumbnails/4.jpg)
De 10 geboden van WordPress development
![Page 5: De 10 geboden van WordPress Development](https://reader033.vdocuments.net/reader033/viewer/2022052901/5566670ad8b42a3d3f8b4ca4/html5/thumbnails/5.jpg)
Waarom 10 geboden
• Consequent werken met je teamleden
• Constant jezelf blijven verbeteren
• Automatisch meer leren van het systeem waar je mee werkt
• Veiligheid en snelheid
• Makkelijke overdraagbare code schrijven
![Page 6: De 10 geboden van WordPress Development](https://reader033.vdocuments.net/reader033/viewer/2022052901/5566670ad8b42a3d3f8b4ca4/html5/thumbnails/6.jpg)
1 WP_DEBUG staat op development altijd op true
en op production altijd op false.
<?php /* Server depending vars */ if( stristr( $_SERVER['SERVER_NAME'], “projectname.localhost" ) ) { define( ‘WP_DEBUG’, true ); } else { define( ‘WP_DEBUG’, false); } ?>
In je wp-config.php
Je systeem wordt sneller, Je kunt plugins van derden beoordelen, Je code blijft beter overeind bij WP-updates.
![Page 7: De 10 geboden van WordPress Development](https://reader033.vdocuments.net/reader033/viewer/2022052901/5566670ad8b42a3d3f8b4ca4/html5/thumbnails/7.jpg)
2
Volg WordPress’ coding standards en CSS standards
http://codex.wordpress.org/WordPress_Coding_Standards http://make.wordpress.org/core/handbook/coding-standards/css/
Links
Je code is beter leesbaar Je code is begrijpbaar Maakt soms code-commentaar overbodig
![Page 8: De 10 geboden van WordPress Development](https://reader033.vdocuments.net/reader033/viewer/2022052901/5566670ad8b42a3d3f8b4ca4/html5/thumbnails/8.jpg)
3 Documenteer je code
http://codex.wordpress.org/Commenting_Code
Link
• Leg altijd uit wat een functie doet • Heldere docblocks • Wie is de auteur • …et cetera
• Maar ook geen overbodige comments… • $i = 5 // i is now five…duh!
Complexe code kun je over een paar jaar nog steeds goed begrijpen, mits goed gedocumenteerd!
![Page 9: De 10 geboden van WordPress Development](https://reader033.vdocuments.net/reader033/viewer/2022052901/5566670ad8b42a3d3f8b4ca4/html5/thumbnails/9.jpg)
4
Leer de WordPress core kennen
Want:
Je vindt nieuwe hooks Je leert nieuwe functionaliteit (bv: interne API’s) Je komt er achter ‘wanneer’ welk onderdeel wordt gebruikt
Kijk eens onder de motorkap van WordPress, wandel door de core-bestanden en functies
![Page 10: De 10 geboden van WordPress Development](https://reader033.vdocuments.net/reader033/viewer/2022052901/5566670ad8b42a3d3f8b4ca4/html5/thumbnails/10.jpg)
5
Maak gebruik van interne API’s en functies
wp_mail(); wp_redirect(); wp_get_remote(); wp_strip_all_tags();
Voorbeelden:
Plugins kunnen er op inhaken, Ze zijn geoptimaliseert voor de WP omgeving
![Page 11: De 10 geboden van WordPress Development](https://reader033.vdocuments.net/reader033/viewer/2022052901/5566670ad8b42a3d3f8b4ca4/html5/thumbnails/11.jpg)
6
Geef je code ‘namespaces’
Fout: function get_event_data(); Goed: function fpl_ get_event_data();
Voorbeeld:
Voorkom conflicten met code van anderen met name plugins van derden
![Page 12: De 10 geboden van WordPress Development](https://reader033.vdocuments.net/reader033/viewer/2022052901/5566670ad8b42a3d3f8b4ca4/html5/thumbnails/12.jpg)
7
Never trust user input! Sanitize & escape!
Lees vooral Hoofdstuk 6 van Professional WordPress Plugin Development
Veiligheid voor alles, WP heeft heel veel ‘veiligheids’-functies Ingebouwd die je kunt gebruiken
Bijvoorbeeld: sanitize_email(); esc_url(); esc_attr();
![Page 13: De 10 geboden van WordPress Development](https://reader033.vdocuments.net/reader033/viewer/2022052901/5566670ad8b42a3d3f8b4ca4/html5/thumbnails/13.jpg)
8
Gebruik nonces
Number used only once
Wederom veiligheid voor alles, Houdt SPAM tegen Beveiliging voor alle formulieren OOK in je back-end!
<form action=... > <?php wp_nonce_field('my-nonce'); ?> ... </form>
![Page 14: De 10 geboden van WordPress Development](https://reader033.vdocuments.net/reader033/viewer/2022052901/5566670ad8b42a3d3f8b4ca4/html5/thumbnails/14.jpg)
9
Maak gebruik van i18n
i18n = internationalization 18
Maak de strings in je code vertaalbaar Voor jezelf en voor anderen
<a href=“#”>Submit</a>
<a href=“#”><?php _e( ‘Submit’, ‘your_text_domain’ ); ?></a>
![Page 15: De 10 geboden van WordPress Development](https://reader033.vdocuments.net/reader033/viewer/2022052901/5566670ad8b42a3d3f8b4ca4/html5/thumbnails/15.jpg)
10
Performance, performance, performance
• Net teveel, en geen overbodige plugins gebruiken • Schrijf slimme/zuinige PHP-code, gebruik WP-transients waar nodig • Indien nodig: maak gebruik van een caching plugin (b.v. W3 Total Cache) • Javascripts in de footer • Slimme CSS selectors • Geen grote DOM manipulaties • Optimaliseer je afbeeldingen • …et cetera
Bij alles wat je doet moet je de snelheid van je systeem in de gaten houden.
![Page 16: De 10 geboden van WordPress Development](https://reader033.vdocuments.net/reader033/viewer/2022052901/5566670ad8b42a3d3f8b4ca4/html5/thumbnails/16.jpg)
Vragen?
Bedankt voor jullie aandacht!
![Page 17: De 10 geboden van WordPress Development](https://reader033.vdocuments.net/reader033/viewer/2022052901/5566670ad8b42a3d3f8b4ca4/html5/thumbnails/17.jpg)
Dan nog even dit…
21 februari Fronteers meeting bij TriMM
Meer informatie volgt z.s.m.