SlideShare uma empresa Scribd logo
1 de 17
Baixar para ler offline
Welkom
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
Floris P. Lof
Webdeveloper bij
TriMM Internet Reality

Technisch blogger bij
WPRealm.com

Twitter: @__jester
De 10 geboden van
WordPress development
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
1
WP_DEBUG staat op development altijd op true
     en op production altijd op false.
                                        Je systeem wordt sneller,
                                        Je kunt plugins van derden beoordelen,
                                        Je code blijft beter overeind bij WP-updates.
 In je wp-config.php
   <?php

   /* Server depending vars */
   if( stristr( $_SERVER['SERVER_NAME'], “projectname.localhost" ) ) {
                 define( ‘WP_DEBUG’, true );
   } else {
                 define( ‘WP_DEBUG’, false);
   }

   ?>
2
  Volg WordPress’ coding standards en CSS
                standards
                                   Je code is beter leesbaar
                                   Je code is begrijpbaar
                                   Maakt soms code-commentaar overbodig

Links

            http://codex.wordpress.org/WordPress_Coding_Standards
        http://make.wordpress.org/core/handbook/coding-standards/css/
3
          Documenteer je code
            • 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!
Link


       http://codex.wordpress.org/Commenting_Code
4
         Leer de WordPress core kennen

                               Kijk eens onder de motorkap van WordPress,
                               wandel door de core-bestanden en functies


Want:

  Je vindt nieuwe hooks
  Je leert nieuwe functionaliteit (bv: interne API’s)
  Je komt er achter ‘wanneer’ welk onderdeel wordt gebruikt
5
  Maak gebruik van interne API’s en functies

                     Plugins kunnen er op inhaken,
                     Ze zijn geoptimaliseert voor de WP omgeving


Voorbeelden:

                 wp_mail();
                 wp_redirect();
                 wp_get_remote();
                 wp_strip_all_tags();
6
             Geef je code ‘namespaces’


                              Voorkom conflicten met code van anderen
                              met name plugins van derden

Voorbeeld:

               Fout: function get_event_data();

               Goed: function fpl_ get_event_data();
7
Never trust user input! Sanitize & escape!

Bijvoorbeeld:                      Veiligheid voor alles,
                                   WP heeft heel veel ‘veiligheids’-functies
sanitize_email();                  Ingebouwd die je kunt gebruiken
esc_url();
esc_attr();



Lees vooral Hoofdstuk 6 van Professional WordPress Plugin Development
8
       Gebruik nonces

<form action=... >
  <?php wp_nonce_field('my-nonce'); ?>
  ...
</form>
                         Wederom veiligheid voor alles,
                         Houdt SPAM tegen
                         Beveiliging voor alle formulieren

                          OOK in je back-end!


  Number used only once
9
         Maak gebruik van i18n
                  <a href=“#”>Submit</a>

<a href=“#”><?php _e( ‘Submit’, ‘your_text_domain’ ); ?></a>




                            Maak de strings in je code vertaalbaar
                            Voor jezelf en voor anderen


                                18
    i18n = internationalization
10
    Performance, performance, performance

                                       Bij alles wat je doet moet je de snelheid
                                       van je systeem in de gaten houden.



•   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
Bedankt voor jullie aandacht!




                     Vragen?
Dan nog even dit…



21 februari Fronteers meeting bij TriMM

     Meer informatie volgt z.s.m.

Mais conteúdo relacionado

Semelhante a De 10 geboden van WordPress Development

Workshop: Introductie tot Python
Workshop: Introductie tot PythonWorkshop: Introductie tot Python
Workshop: Introductie tot PythonVincent Claes
 
Mijn site beveiliging
Mijn site beveiligingMijn site beveiliging
Mijn site beveiligingMarko Heijnen
 
PFZ Workshop - Automatiseren van functionele tests
PFZ Workshop - Automatiseren van functionele testsPFZ Workshop - Automatiseren van functionele tests
PFZ Workshop - Automatiseren van functionele testsRichard Tuin
 
Linux command-line-magic-jdnl15
Linux command-line-magic-jdnl15Linux command-line-magic-jdnl15
Linux command-line-magic-jdnl15Peter Martin
 
XPages Introductie
XPages IntroductieXPages Introductie
XPages IntroductieRob Bontekoe
 
De gevaren van WordPress plugins
De gevaren van WordPress pluginsDe gevaren van WordPress plugins
De gevaren van WordPress pluginsTrendwerk
 
Ict2 trm- werking internet
Ict2 trm- werking internetIct2 trm- werking internet
Ict2 trm- werking internetkaatversele
 
EMS Ehsal - production in a digital world 2013
EMS Ehsal - production in a digital world 2013EMS Ehsal - production in a digital world 2013
EMS Ehsal - production in a digital world 2013Hans Palmers
 
Joomla backend-beheer vereenvoudigen - Joomladagen 2016
Joomla backend-beheer vereenvoudigen - Joomladagen 2016Joomla backend-beheer vereenvoudigen - Joomladagen 2016
Joomla backend-beheer vereenvoudigen - Joomladagen 2016Rick Spaan
 
Lucius Drupal Development Cursus
Lucius Drupal Development CursusLucius Drupal Development Cursus
Lucius Drupal Development CursusLuciuswebsystems
 
Php samenvatting
Php samenvattingPhp samenvatting
Php samenvattingmvanginkel
 
Wordpress Training Deel 1 2-3 - Handout
Wordpress Training Deel 1 2-3 - HandoutWordpress Training Deel 1 2-3 - Handout
Wordpress Training Deel 1 2-3 - HandoutWonderlijk Werken
 
Digipinguins: containers en virtualisatie (Ghlen Nagels - youngsource.be)
Digipinguins: containers en virtualisatie (Ghlen Nagels - youngsource.be)Digipinguins: containers en virtualisatie (Ghlen Nagels - youngsource.be)
Digipinguins: containers en virtualisatie (Ghlen Nagels - youngsource.be)Avansa Mid- en Zuidwest
 
embedded Linux, van Black Tot QA
embedded Linux, van Black Tot QAembedded Linux, van Black Tot QA
embedded Linux, van Black Tot QAAlbert Mietus
 
The power of powershell in Office 365 - TechDays 2015
The power of powershell in Office 365 - TechDays 2015The power of powershell in Office 365 - TechDays 2015
The power of powershell in Office 365 - TechDays 2015Delta-N
 
Ontwikkelen met Drupal - Een developer centric aanpak
Ontwikkelen met Drupal - Een developer centric aanpakOntwikkelen met Drupal - Een developer centric aanpak
Ontwikkelen met Drupal - Een developer centric aanpakHoppinger
 
Flex In De Praktijk
Flex In De PraktijkFlex In De Praktijk
Flex In De Praktijkmarcel panse
 
Open Computer and Software Inventory
Open Computer and Software InventoryOpen Computer and Software Inventory
Open Computer and Software Inventory247 Invest
 

Semelhante a De 10 geboden van WordPress Development (20)

Workshop: Introductie tot Python
Workshop: Introductie tot PythonWorkshop: Introductie tot Python
Workshop: Introductie tot Python
 
Mijn site beveiliging
Mijn site beveiligingMijn site beveiliging
Mijn site beveiliging
 
PFZ Workshop - Automatiseren van functionele tests
PFZ Workshop - Automatiseren van functionele testsPFZ Workshop - Automatiseren van functionele tests
PFZ Workshop - Automatiseren van functionele tests
 
Linux command-line-magic-jdnl15
Linux command-line-magic-jdnl15Linux command-line-magic-jdnl15
Linux command-line-magic-jdnl15
 
XPages Introductie
XPages IntroductieXPages Introductie
XPages Introductie
 
De gevaren van WordPress plugins
De gevaren van WordPress pluginsDe gevaren van WordPress plugins
De gevaren van WordPress plugins
 
Ict2 trm- werking internet
Ict2 trm- werking internetIct2 trm- werking internet
Ict2 trm- werking internet
 
EMS Ehsal - production in a digital world 2013
EMS Ehsal - production in a digital world 2013EMS Ehsal - production in a digital world 2013
EMS Ehsal - production in a digital world 2013
 
Joomla backend-beheer vereenvoudigen - Joomladagen 2016
Joomla backend-beheer vereenvoudigen - Joomladagen 2016Joomla backend-beheer vereenvoudigen - Joomladagen 2016
Joomla backend-beheer vereenvoudigen - Joomladagen 2016
 
Lucius Drupal Development Cursus
Lucius Drupal Development CursusLucius Drupal Development Cursus
Lucius Drupal Development Cursus
 
WordPress Security
WordPress SecurityWordPress Security
WordPress Security
 
Php samenvatting
Php samenvattingPhp samenvatting
Php samenvatting
 
Wordpress Training Deel 1 2-3 - Handout
Wordpress Training Deel 1 2-3 - HandoutWordpress Training Deel 1 2-3 - Handout
Wordpress Training Deel 1 2-3 - Handout
 
Digipinguins: containers en virtualisatie (Ghlen Nagels - youngsource.be)
Digipinguins: containers en virtualisatie (Ghlen Nagels - youngsource.be)Digipinguins: containers en virtualisatie (Ghlen Nagels - youngsource.be)
Digipinguins: containers en virtualisatie (Ghlen Nagels - youngsource.be)
 
embedded Linux, van Black Tot QA
embedded Linux, van Black Tot QAembedded Linux, van Black Tot QA
embedded Linux, van Black Tot QA
 
The power of powershell in Office 365 - TechDays 2015
The power of powershell in Office 365 - TechDays 2015The power of powershell in Office 365 - TechDays 2015
The power of powershell in Office 365 - TechDays 2015
 
Ontwikkelen met Drupal - Een developer centric aanpak
Ontwikkelen met Drupal - Een developer centric aanpakOntwikkelen met Drupal - Een developer centric aanpak
Ontwikkelen met Drupal - Een developer centric aanpak
 
Drupal 7 Architectuur
Drupal 7 ArchitectuurDrupal 7 Architectuur
Drupal 7 Architectuur
 
Flex In De Praktijk
Flex In De PraktijkFlex In De Praktijk
Flex In De Praktijk
 
Open Computer and Software Inventory
Open Computer and Software InventoryOpen Computer and Software Inventory
Open Computer and Software Inventory
 

De 10 geboden van WordPress Development

  • 2. 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
  • 3. Floris P. Lof Webdeveloper bij TriMM Internet Reality Technisch blogger bij WPRealm.com Twitter: @__jester
  • 4. De 10 geboden van WordPress development
  • 5. 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
  • 6. 1 WP_DEBUG staat op development altijd op true en op production altijd op false. Je systeem wordt sneller, Je kunt plugins van derden beoordelen, Je code blijft beter overeind bij WP-updates. In je wp-config.php <?php /* Server depending vars */ if( stristr( $_SERVER['SERVER_NAME'], “projectname.localhost" ) ) { define( ‘WP_DEBUG’, true ); } else { define( ‘WP_DEBUG’, false); } ?>
  • 7. 2 Volg WordPress’ coding standards en CSS standards Je code is beter leesbaar Je code is begrijpbaar Maakt soms code-commentaar overbodig Links http://codex.wordpress.org/WordPress_Coding_Standards http://make.wordpress.org/core/handbook/coding-standards/css/
  • 8. 3 Documenteer je code • 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! Link http://codex.wordpress.org/Commenting_Code
  • 9. 4 Leer de WordPress core kennen Kijk eens onder de motorkap van WordPress, wandel door de core-bestanden en functies Want: Je vindt nieuwe hooks Je leert nieuwe functionaliteit (bv: interne API’s) Je komt er achter ‘wanneer’ welk onderdeel wordt gebruikt
  • 10. 5 Maak gebruik van interne API’s en functies Plugins kunnen er op inhaken, Ze zijn geoptimaliseert voor de WP omgeving Voorbeelden: wp_mail(); wp_redirect(); wp_get_remote(); wp_strip_all_tags();
  • 11. 6 Geef je code ‘namespaces’ Voorkom conflicten met code van anderen met name plugins van derden Voorbeeld: Fout: function get_event_data(); Goed: function fpl_ get_event_data();
  • 12. 7 Never trust user input! Sanitize & escape! Bijvoorbeeld: Veiligheid voor alles, WP heeft heel veel ‘veiligheids’-functies sanitize_email(); Ingebouwd die je kunt gebruiken esc_url(); esc_attr(); Lees vooral Hoofdstuk 6 van Professional WordPress Plugin Development
  • 13. 8 Gebruik nonces <form action=... > <?php wp_nonce_field('my-nonce'); ?> ... </form> Wederom veiligheid voor alles, Houdt SPAM tegen Beveiliging voor alle formulieren OOK in je back-end! Number used only once
  • 14. 9 Maak gebruik van i18n <a href=“#”>Submit</a> <a href=“#”><?php _e( ‘Submit’, ‘your_text_domain’ ); ?></a> Maak de strings in je code vertaalbaar Voor jezelf en voor anderen 18 i18n = internationalization
  • 15. 10 Performance, performance, performance Bij alles wat je doet moet je de snelheid van je systeem in de gaten houden. • 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
  • 16. Bedankt voor jullie aandacht! Vragen?
  • 17. Dan nog even dit… 21 februari Fronteers meeting bij TriMM Meer informatie volgt z.s.m.