SlideShare a Scribd company logo

WPtech: L'API Customizer pour les plugins

C
C

Comment utiliser l'API customizer pour les plugins ? Suivez le guide !

WPtech: L'API Customizer pour les plugins

1 of 63
Download to read offline
L'API CUSTOMIZER
POUR LES PLUGINS
© REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
REMICORSONAUTOMATTIC / WOOTHEMES / WOOCOMMERCE
@REMICORSON - REMICORSON.COM
© REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
© REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
L'EMETTEUR EST
TOUJOURS RESPONSABLE
DE L'IMCOMPREHENSION
DE SON MESSAGE© REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
EXEMPLES
© REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
© REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015

Recommended

WordPress Realtime - WordCamp São Paulo 2015
WordPress Realtime - WordCamp São Paulo 2015WordPress Realtime - WordCamp São Paulo 2015
WordPress Realtime - WordCamp São Paulo 2015Fernando Daciuk
 
Writing your Third Plugin
Writing your Third PluginWriting your Third Plugin
Writing your Third PluginJustin Ryan
 
Intro to WordPress Plugin Development
Intro to WordPress Plugin DevelopmentIntro to WordPress Plugin Development
Intro to WordPress Plugin DevelopmentBrad Williams
 
Developers, Be a Bada$$ with WP-CLI
Developers, Be a Bada$$ with WP-CLIDevelopers, Be a Bada$$ with WP-CLI
Developers, Be a Bada$$ with WP-CLIWP Engine
 
Odoo development workflow with pip and virtualenv
Odoo development workflow with pip and virtualenvOdoo development workflow with pip and virtualenv
Odoo development workflow with pip and virtualenvacsone
 
Mehr Performance für WordPress - WordCamp Köln
Mehr Performance für WordPress - WordCamp KölnMehr Performance für WordPress - WordCamp Köln
Mehr Performance für WordPress - WordCamp KölnWalter Ebert
 

More Related Content

What's hot

Use Symfony2 components inside WordPress
Use Symfony2 components inside WordPress Use Symfony2 components inside WordPress
Use Symfony2 components inside WordPress Maurizio Pelizzone
 
Curso Symfony - Clase 2
Curso Symfony - Clase 2Curso Symfony - Clase 2
Curso Symfony - Clase 2Javier Eguiluz
 
Beyond the WordPress 5 minute Install
Beyond the WordPress 5 minute InstallBeyond the WordPress 5 minute Install
Beyond the WordPress 5 minute InstallSteve Taylor
 
Getting to The Loop - London Wordpress Meetup July 28th
Getting to The Loop - London Wordpress Meetup  July 28thGetting to The Loop - London Wordpress Meetup  July 28th
Getting to The Loop - London Wordpress Meetup July 28thChris Adams
 
Optimising Your Front End Workflow With Symfony, Twig, Bower and Gulp
Optimising Your Front End Workflow With Symfony, Twig, Bower and GulpOptimising Your Front End Workflow With Symfony, Twig, Bower and Gulp
Optimising Your Front End Workflow With Symfony, Twig, Bower and GulpMatthew Davis
 
Keeping the frontend under control with Symfony and Webpack
Keeping the frontend under control with Symfony and WebpackKeeping the frontend under control with Symfony and Webpack
Keeping the frontend under control with Symfony and WebpackIgnacio Martín
 
Pyramid Lighter/Faster/Better web apps
Pyramid Lighter/Faster/Better web appsPyramid Lighter/Faster/Better web apps
Pyramid Lighter/Faster/Better web appsDylan Jay
 
How to start with eZ Publish 5
How to start with eZ Publish 5How to start with eZ Publish 5
How to start with eZ Publish 5Donat Fritschy
 
Object Oriented Programming for WordPress Plugin Development
Object Oriented Programming for WordPress Plugin DevelopmentObject Oriented Programming for WordPress Plugin Development
Object Oriented Programming for WordPress Plugin Developmentmtoppa
 
Take Command of WordPress With WP-CLI
Take Command of WordPress With WP-CLITake Command of WordPress With WP-CLI
Take Command of WordPress With WP-CLIDiana Thompson
 
Vagrant WordCamp Hamilton
Vagrant  WordCamp HamiltonVagrant  WordCamp Hamilton
Vagrant WordCamp HamiltonPaul Bearne
 
Demystifying Hooks, Actions & Filters - WordCamp Belfast 2018
Demystifying Hooks, Actions & Filters - WordCamp Belfast 2018Demystifying Hooks, Actions & Filters - WordCamp Belfast 2018
Demystifying Hooks, Actions & Filters - WordCamp Belfast 2018Damien Carbery
 
Symfony tips and tricks
Symfony tips and tricksSymfony tips and tricks
Symfony tips and tricksJavier Eguiluz
 
Widget Summit 2008
Widget Summit 2008Widget Summit 2008
Widget Summit 2008Volkan Unsal
 
Webinar: AngularJS and the WordPress REST API
Webinar: AngularJS and the WordPress REST APIWebinar: AngularJS and the WordPress REST API
Webinar: AngularJS and the WordPress REST APIWP Engine UK
 
Symfony: Your Next Microframework (SymfonyCon 2015)
Symfony: Your Next Microframework (SymfonyCon 2015)Symfony: Your Next Microframework (SymfonyCon 2015)
Symfony: Your Next Microframework (SymfonyCon 2015)Ryan Weaver
 

What's hot (20)

Use Symfony2 components inside WordPress
Use Symfony2 components inside WordPress Use Symfony2 components inside WordPress
Use Symfony2 components inside WordPress
 
Curso Symfony - Clase 2
Curso Symfony - Clase 2Curso Symfony - Clase 2
Curso Symfony - Clase 2
 
Beyond the WordPress 5 minute Install
Beyond the WordPress 5 minute InstallBeyond the WordPress 5 minute Install
Beyond the WordPress 5 minute Install
 
Getting to The Loop - London Wordpress Meetup July 28th
Getting to The Loop - London Wordpress Meetup  July 28thGetting to The Loop - London Wordpress Meetup  July 28th
Getting to The Loop - London Wordpress Meetup July 28th
 
SocketStream
SocketStreamSocketStream
SocketStream
 
Optimising Your Front End Workflow With Symfony, Twig, Bower and Gulp
Optimising Your Front End Workflow With Symfony, Twig, Bower and GulpOptimising Your Front End Workflow With Symfony, Twig, Bower and Gulp
Optimising Your Front End Workflow With Symfony, Twig, Bower and Gulp
 
Keeping the frontend under control with Symfony and Webpack
Keeping the frontend under control with Symfony and WebpackKeeping the frontend under control with Symfony and Webpack
Keeping the frontend under control with Symfony and Webpack
 
Pyramid Lighter/Faster/Better web apps
Pyramid Lighter/Faster/Better web appsPyramid Lighter/Faster/Better web apps
Pyramid Lighter/Faster/Better web apps
 
How to start with eZ Publish 5
How to start with eZ Publish 5How to start with eZ Publish 5
How to start with eZ Publish 5
 
Object Oriented Programming for WordPress Plugin Development
Object Oriented Programming for WordPress Plugin DevelopmentObject Oriented Programming for WordPress Plugin Development
Object Oriented Programming for WordPress Plugin Development
 
Take Command of WordPress With WP-CLI
Take Command of WordPress With WP-CLITake Command of WordPress With WP-CLI
Take Command of WordPress With WP-CLI
 
Vagrant WordCamp Hamilton
Vagrant  WordCamp HamiltonVagrant  WordCamp Hamilton
Vagrant WordCamp Hamilton
 
Demystifying Hooks, Actions & Filters - WordCamp Belfast 2018
Demystifying Hooks, Actions & Filters - WordCamp Belfast 2018Demystifying Hooks, Actions & Filters - WordCamp Belfast 2018
Demystifying Hooks, Actions & Filters - WordCamp Belfast 2018
 
Symfony tips and tricks
Symfony tips and tricksSymfony tips and tricks
Symfony tips and tricks
 
Widget Summit 2008
Widget Summit 2008Widget Summit 2008
Widget Summit 2008
 
Fast by Default
Fast by DefaultFast by Default
Fast by Default
 
Webinar: AngularJS and the WordPress REST API
Webinar: AngularJS and the WordPress REST APIWebinar: AngularJS and the WordPress REST API
Webinar: AngularJS and the WordPress REST API
 
Css web gallery
Css web galleryCss web gallery
Css web gallery
 
Symfony: Your Next Microframework (SymfonyCon 2015)
Symfony: Your Next Microframework (SymfonyCon 2015)Symfony: Your Next Microframework (SymfonyCon 2015)
Symfony: Your Next Microframework (SymfonyCon 2015)
 
Complex Sites with Silex
Complex Sites with SilexComplex Sites with Silex
Complex Sites with Silex
 

Viewers also liked

Enrichir vos contenus Wordpress avec les API - WPTech 2015
Enrichir vos contenus Wordpress avec les API - WPTech 2015Enrichir vos contenus Wordpress avec les API - WPTech 2015
Enrichir vos contenus Wordpress avec les API - WPTech 2015PXNetwork
 
Comment créer des hooks dans vos développements WordPress - WP Tech 2015
Comment créer des hooks dans vos développements WordPress - WP Tech 2015Comment créer des hooks dans vos développements WordPress - WP Tech 2015
Comment créer des hooks dans vos développements WordPress - WP Tech 2015Boiteaweb
 
Pensez Web-Performances avec WordPress - Une conférence de Julien Oger et Pie...
Pensez Web-Performances avec WordPress - Une conférence de Julien Oger et Pie...Pensez Web-Performances avec WordPress - Une conférence de Julien Oger et Pie...
Pensez Web-Performances avec WordPress - Une conférence de Julien Oger et Pie...pierredargham
 
Migrer les données de n'importe quel CMS vers WordPress
 Migrer les données de n'importe quel CMS vers WordPress Migrer les données de n'importe quel CMS vers WordPress
Migrer les données de n'importe quel CMS vers WordPressTony Archambeau
 
WooCommerce: How to Customize WordPress via PHP Snippets
WooCommerce: How to Customize WordPress via PHP SnippetsWooCommerce: How to Customize WordPress via PHP Snippets
WooCommerce: How to Customize WordPress via PHP SnippetsRodolfo Melogli
 
PDFs à la volée avec TCPDF
PDFs à la volée avec TCPDFPDFs à la volée avec TCPDF
PDFs à la volée avec TCPDFJenny Beaumont
 
Making WooCommerce Your Own
Making WooCommerce Your OwnMaking WooCommerce Your Own
Making WooCommerce Your OwnLeo Gopal
 
Master WooCommerce Troubleshooting
Master WooCommerce TroubleshootingMaster WooCommerce Troubleshooting
Master WooCommerce TroubleshootingRodolfo Melogli
 
Cómo crear una tienda online en wordpress
Cómo crear una tienda online en wordpressCómo crear una tienda online en wordpress
Cómo crear una tienda online en wordpressBeatriz González Pozo
 
Plataformas de Comercio Electrónico Unificadas, por Javier Hoyos (PwC)
Plataformas de Comercio Electrónico Unificadas, por Javier Hoyos (PwC) Plataformas de Comercio Electrónico Unificadas, por Javier Hoyos (PwC)
Plataformas de Comercio Electrónico Unificadas, por Javier Hoyos (PwC) EOI Escuela de Organización Industrial
 
Instagram para principiantes (INCLUYE NOVEDADES DE SEPTIEMBRE-15)
Instagram para principiantes (INCLUYE NOVEDADES DE SEPTIEMBRE-15)Instagram para principiantes (INCLUYE NOVEDADES DE SEPTIEMBRE-15)
Instagram para principiantes (INCLUYE NOVEDADES DE SEPTIEMBRE-15)Beatriz González Pozo
 
Mise à jour sur la sécurité WordPress – WordCamp Bordeaux 2017
Mise à jour sur la sécurité WordPress – WordCamp Bordeaux 2017Mise à jour sur la sécurité WordPress – WordCamp Bordeaux 2017
Mise à jour sur la sécurité WordPress – WordCamp Bordeaux 2017Boiteaweb
 
Tiendas de Ropa
Tiendas de RopaTiendas de Ropa
Tiendas de RopaUniclick
 
Faire du e-commerce en France avec WordPress
Faire du e-commerce en France avec WordPressFaire du e-commerce en France avec WordPress
Faire du e-commerce en France avec WordPresscorsonr
 
Pourquoi WordPress est le CMS le plus sécurisé ?
Pourquoi WordPress est le CMS le plus sécurisé ?Pourquoi WordPress est le CMS le plus sécurisé ?
Pourquoi WordPress est le CMS le plus sécurisé ?Boiteaweb
 
[WordCamp Bordeaux] Fusionner sa politique print et web avec WordPress
[WordCamp Bordeaux] Fusionner sa politique print et web avec WordPress [WordCamp Bordeaux] Fusionner sa politique print et web avec WordPress
[WordCamp Bordeaux] Fusionner sa politique print et web avec WordPress Grillot Sébastien
 
Pourquoi coder son propre thème WordPress
Pourquoi coder son propre thème WordPressPourquoi coder son propre thème WordPress
Pourquoi coder son propre thème WordPressThomas Villain
 
Ouvrir vos plugins aux autres développeurs - WPTech Nantes
Ouvrir vos plugins aux autres développeurs - WPTech NantesOuvrir vos plugins aux autres développeurs - WPTech Nantes
Ouvrir vos plugins aux autres développeurs - WPTech Nantescorsonr
 
Tu tienda virtual en Woocommerce
Tu tienda virtual en WoocommerceTu tienda virtual en Woocommerce
Tu tienda virtual en WoocommerceJavier Garcia
 

Viewers also liked (20)

Enrichir vos contenus Wordpress avec les API - WPTech 2015
Enrichir vos contenus Wordpress avec les API - WPTech 2015Enrichir vos contenus Wordpress avec les API - WPTech 2015
Enrichir vos contenus Wordpress avec les API - WPTech 2015
 
Comment créer des hooks dans vos développements WordPress - WP Tech 2015
Comment créer des hooks dans vos développements WordPress - WP Tech 2015Comment créer des hooks dans vos développements WordPress - WP Tech 2015
Comment créer des hooks dans vos développements WordPress - WP Tech 2015
 
Pensez Web-Performances avec WordPress - Une conférence de Julien Oger et Pie...
Pensez Web-Performances avec WordPress - Une conférence de Julien Oger et Pie...Pensez Web-Performances avec WordPress - Une conférence de Julien Oger et Pie...
Pensez Web-Performances avec WordPress - Une conférence de Julien Oger et Pie...
 
Migrer les données de n'importe quel CMS vers WordPress
 Migrer les données de n'importe quel CMS vers WordPress Migrer les données de n'importe quel CMS vers WordPress
Migrer les données de n'importe quel CMS vers WordPress
 
WooCommerce: How to Customize WordPress via PHP Snippets
WooCommerce: How to Customize WordPress via PHP SnippetsWooCommerce: How to Customize WordPress via PHP Snippets
WooCommerce: How to Customize WordPress via PHP Snippets
 
PDFs à la volée avec TCPDF
PDFs à la volée avec TCPDFPDFs à la volée avec TCPDF
PDFs à la volée avec TCPDF
 
Making WooCommerce Your Own
Making WooCommerce Your OwnMaking WooCommerce Your Own
Making WooCommerce Your Own
 
Master WooCommerce Troubleshooting
Master WooCommerce TroubleshootingMaster WooCommerce Troubleshooting
Master WooCommerce Troubleshooting
 
El trabajo del Community Manager
El trabajo del Community ManagerEl trabajo del Community Manager
El trabajo del Community Manager
 
Cómo crear una tienda online en wordpress
Cómo crear una tienda online en wordpressCómo crear una tienda online en wordpress
Cómo crear una tienda online en wordpress
 
Plataformas de Comercio Electrónico Unificadas, por Javier Hoyos (PwC)
Plataformas de Comercio Electrónico Unificadas, por Javier Hoyos (PwC) Plataformas de Comercio Electrónico Unificadas, por Javier Hoyos (PwC)
Plataformas de Comercio Electrónico Unificadas, por Javier Hoyos (PwC)
 
Instagram para principiantes (INCLUYE NOVEDADES DE SEPTIEMBRE-15)
Instagram para principiantes (INCLUYE NOVEDADES DE SEPTIEMBRE-15)Instagram para principiantes (INCLUYE NOVEDADES DE SEPTIEMBRE-15)
Instagram para principiantes (INCLUYE NOVEDADES DE SEPTIEMBRE-15)
 
Mise à jour sur la sécurité WordPress – WordCamp Bordeaux 2017
Mise à jour sur la sécurité WordPress – WordCamp Bordeaux 2017Mise à jour sur la sécurité WordPress – WordCamp Bordeaux 2017
Mise à jour sur la sécurité WordPress – WordCamp Bordeaux 2017
 
Tiendas de Ropa
Tiendas de RopaTiendas de Ropa
Tiendas de Ropa
 
Faire du e-commerce en France avec WordPress
Faire du e-commerce en France avec WordPressFaire du e-commerce en France avec WordPress
Faire du e-commerce en France avec WordPress
 
Pourquoi WordPress est le CMS le plus sécurisé ?
Pourquoi WordPress est le CMS le plus sécurisé ?Pourquoi WordPress est le CMS le plus sécurisé ?
Pourquoi WordPress est le CMS le plus sécurisé ?
 
[WordCamp Bordeaux] Fusionner sa politique print et web avec WordPress
[WordCamp Bordeaux] Fusionner sa politique print et web avec WordPress [WordCamp Bordeaux] Fusionner sa politique print et web avec WordPress
[WordCamp Bordeaux] Fusionner sa politique print et web avec WordPress
 
Pourquoi coder son propre thème WordPress
Pourquoi coder son propre thème WordPressPourquoi coder son propre thème WordPress
Pourquoi coder son propre thème WordPress
 
Ouvrir vos plugins aux autres développeurs - WPTech Nantes
Ouvrir vos plugins aux autres développeurs - WPTech NantesOuvrir vos plugins aux autres développeurs - WPTech Nantes
Ouvrir vos plugins aux autres développeurs - WPTech Nantes
 
Tu tienda virtual en Woocommerce
Tu tienda virtual en WoocommerceTu tienda virtual en Woocommerce
Tu tienda virtual en Woocommerce
 

Similar to WPtech: L'API Customizer pour les plugins

Unit testing after Zend Framework 1.8
Unit testing after Zend Framework 1.8Unit testing after Zend Framework 1.8
Unit testing after Zend Framework 1.8Michelangelo van Dam
 
WordCamp LA 2014- Writing Code that Scales
WordCamp LA 2014-  Writing Code that ScalesWordCamp LA 2014-  Writing Code that Scales
WordCamp LA 2014- Writing Code that ScalesSpectrOMTech.com
 
WCMTL 15 - Create your own shortcode (Fr)
WCMTL 15 - Create your own shortcode (Fr)WCMTL 15 - Create your own shortcode (Fr)
WCMTL 15 - Create your own shortcode (Fr)MichaelBontyes
 
10 Things Every Plugin Developer Should Know (WordCamp Atlanta 2013)
10 Things Every Plugin Developer Should Know (WordCamp Atlanta 2013)10 Things Every Plugin Developer Should Know (WordCamp Atlanta 2013)
10 Things Every Plugin Developer Should Know (WordCamp Atlanta 2013)arcware
 
Doctrine For Beginners
Doctrine For BeginnersDoctrine For Beginners
Doctrine For BeginnersJonathan Wage
 
Meet Magento DE 2016 - Kristof Ringleff - Growing up with Magento
Meet Magento DE 2016 - Kristof Ringleff - Growing up with MagentoMeet Magento DE 2016 - Kristof Ringleff - Growing up with Magento
Meet Magento DE 2016 - Kristof Ringleff - Growing up with MagentoKristof Ringleff
 
[Bristol WordPress] Supercharging WordPress Development
[Bristol WordPress] Supercharging WordPress Development[Bristol WordPress] Supercharging WordPress Development
[Bristol WordPress] Supercharging WordPress DevelopmentAdam Tomat
 
Steam Learn: Faster php testing process with Atoum
Steam Learn: Faster php testing process with AtoumSteam Learn: Faster php testing process with Atoum
Steam Learn: Faster php testing process with Atouminovia
 
2015.02.05 alexis von glasow - faster php testing process with atoum
2015.02.05   alexis von glasow - faster php testing process with atoum2015.02.05   alexis von glasow - faster php testing process with atoum
2015.02.05 alexis von glasow - faster php testing process with atouminovia
 
AngularJS: What's the Big Deal?
AngularJS: What's the Big Deal?AngularJS: What's the Big Deal?
AngularJS: What's the Big Deal?Jim Duffy
 
前后端mvc经验 - webrebuild 2011 session
前后端mvc经验 - webrebuild 2011 session前后端mvc经验 - webrebuild 2011 session
前后端mvc经验 - webrebuild 2011 sessionRANK LIU
 
Using and reusing CakePHP plugins
Using and reusing CakePHP pluginsUsing and reusing CakePHP plugins
Using and reusing CakePHP pluginsPierre MARTIN
 
Yves & Zed @ Developer Conference 2013
Yves & Zed @ Developer Conference 2013Yves & Zed @ Developer Conference 2013
Yves & Zed @ Developer Conference 2013FabianWesnerBerlin
 
Hardcore URL Routing for WordPress - WordCamp Atlanta 2014 (PPT)
Hardcore URL Routing for WordPress - WordCamp Atlanta 2014 (PPT)Hardcore URL Routing for WordPress - WordCamp Atlanta 2014 (PPT)
Hardcore URL Routing for WordPress - WordCamp Atlanta 2014 (PPT)Mike Schinkel
 
Using Geeklog as a Web Application Framework
Using Geeklog as a Web Application FrameworkUsing Geeklog as a Web Application Framework
Using Geeklog as a Web Application FrameworkDirk Haun
 
Security and Performance - Italian WordPress Conference
Security and Performance - Italian WordPress ConferenceSecurity and Performance - Italian WordPress Conference
Security and Performance - Italian WordPress ConferenceMaurizio Pelizzone
 
Ten Battle-Tested Tips for Atlassian Connect Add-ons
Ten Battle-Tested Tips for Atlassian Connect Add-onsTen Battle-Tested Tips for Atlassian Connect Add-ons
Ten Battle-Tested Tips for Atlassian Connect Add-onsAtlassian
 
Workshop quality assurance for php projects tek12
Workshop quality assurance for php projects tek12Workshop quality assurance for php projects tek12
Workshop quality assurance for php projects tek12Michelangelo van Dam
 

Similar to WPtech: L'API Customizer pour les plugins (20)

Unit testing after Zend Framework 1.8
Unit testing after Zend Framework 1.8Unit testing after Zend Framework 1.8
Unit testing after Zend Framework 1.8
 
WordCamp LA 2014- Writing Code that Scales
WordCamp LA 2014-  Writing Code that ScalesWordCamp LA 2014-  Writing Code that Scales
WordCamp LA 2014- Writing Code that Scales
 
WCMTL 15 - Create your own shortcode (Fr)
WCMTL 15 - Create your own shortcode (Fr)WCMTL 15 - Create your own shortcode (Fr)
WCMTL 15 - Create your own shortcode (Fr)
 
10 Things Every Plugin Developer Should Know (WordCamp Atlanta 2013)
10 Things Every Plugin Developer Should Know (WordCamp Atlanta 2013)10 Things Every Plugin Developer Should Know (WordCamp Atlanta 2013)
10 Things Every Plugin Developer Should Know (WordCamp Atlanta 2013)
 
QA for PHP projects
QA for PHP projectsQA for PHP projects
QA for PHP projects
 
Doctrine For Beginners
Doctrine For BeginnersDoctrine For Beginners
Doctrine For Beginners
 
Meet Magento DE 2016 - Kristof Ringleff - Growing up with Magento
Meet Magento DE 2016 - Kristof Ringleff - Growing up with MagentoMeet Magento DE 2016 - Kristof Ringleff - Growing up with Magento
Meet Magento DE 2016 - Kristof Ringleff - Growing up with Magento
 
[Bristol WordPress] Supercharging WordPress Development
[Bristol WordPress] Supercharging WordPress Development[Bristol WordPress] Supercharging WordPress Development
[Bristol WordPress] Supercharging WordPress Development
 
Steam Learn: Faster php testing process with Atoum
Steam Learn: Faster php testing process with AtoumSteam Learn: Faster php testing process with Atoum
Steam Learn: Faster php testing process with Atoum
 
2015.02.05 alexis von glasow - faster php testing process with atoum
2015.02.05   alexis von glasow - faster php testing process with atoum2015.02.05   alexis von glasow - faster php testing process with atoum
2015.02.05 alexis von glasow - faster php testing process with atoum
 
AngularJS: What's the Big Deal?
AngularJS: What's the Big Deal?AngularJS: What's the Big Deal?
AngularJS: What's the Big Deal?
 
前后端mvc经验 - webrebuild 2011 session
前后端mvc经验 - webrebuild 2011 session前后端mvc经验 - webrebuild 2011 session
前后端mvc经验 - webrebuild 2011 session
 
Using and reusing CakePHP plugins
Using and reusing CakePHP pluginsUsing and reusing CakePHP plugins
Using and reusing CakePHP plugins
 
Yves & Zed @ Developer Conference 2013
Yves & Zed @ Developer Conference 2013Yves & Zed @ Developer Conference 2013
Yves & Zed @ Developer Conference 2013
 
Hardcore URL Routing for WordPress - WordCamp Atlanta 2014 (PPT)
Hardcore URL Routing for WordPress - WordCamp Atlanta 2014 (PPT)Hardcore URL Routing for WordPress - WordCamp Atlanta 2014 (PPT)
Hardcore URL Routing for WordPress - WordCamp Atlanta 2014 (PPT)
 
WordCamp Praga 2015
WordCamp Praga 2015WordCamp Praga 2015
WordCamp Praga 2015
 
Using Geeklog as a Web Application Framework
Using Geeklog as a Web Application FrameworkUsing Geeklog as a Web Application Framework
Using Geeklog as a Web Application Framework
 
Security and Performance - Italian WordPress Conference
Security and Performance - Italian WordPress ConferenceSecurity and Performance - Italian WordPress Conference
Security and Performance - Italian WordPress Conference
 
Ten Battle-Tested Tips for Atlassian Connect Add-ons
Ten Battle-Tested Tips for Atlassian Connect Add-onsTen Battle-Tested Tips for Atlassian Connect Add-ons
Ten Battle-Tested Tips for Atlassian Connect Add-ons
 
Workshop quality assurance for php projects tek12
Workshop quality assurance for php projects tek12Workshop quality assurance for php projects tek12
Workshop quality assurance for php projects tek12
 

More from corsonr

Un bloc WooTenberg pour un coworking associatif
Un bloc WooTenberg pour un coworking associatifUn bloc WooTenberg pour un coworking associatif
Un bloc WooTenberg pour un coworking associatifcorsonr
 
L'impact écologique d'Internet
L'impact écologique d'InternetL'impact écologique d'Internet
L'impact écologique d'Internetcorsonr
 
WooCommerce WP-CLI Basics
WooCommerce WP-CLI BasicsWooCommerce WP-CLI Basics
WooCommerce WP-CLI Basicscorsonr
 
Développez votre business en développant le business de vos clients
Développez votre business en développant le business de vos clientsDéveloppez votre business en développant le business de vos clients
Développez votre business en développant le business de vos clientscorsonr
 
WordCamp Paris 2015 - Marketing WooCommerce pour augmenter les ventes - Rémi ...
WordCamp Paris 2015 - Marketing WooCommerce pour augmenter les ventes - Rémi ...WordCamp Paris 2015 - Marketing WooCommerce pour augmenter les ventes - Rémi ...
WordCamp Paris 2015 - Marketing WooCommerce pour augmenter les ventes - Rémi ...corsonr
 
Wordcamp Paris 2013
Wordcamp Paris 2013Wordcamp Paris 2013
Wordcamp Paris 2013corsonr
 

More from corsonr (6)

Un bloc WooTenberg pour un coworking associatif
Un bloc WooTenberg pour un coworking associatifUn bloc WooTenberg pour un coworking associatif
Un bloc WooTenberg pour un coworking associatif
 
L'impact écologique d'Internet
L'impact écologique d'InternetL'impact écologique d'Internet
L'impact écologique d'Internet
 
WooCommerce WP-CLI Basics
WooCommerce WP-CLI BasicsWooCommerce WP-CLI Basics
WooCommerce WP-CLI Basics
 
Développez votre business en développant le business de vos clients
Développez votre business en développant le business de vos clientsDéveloppez votre business en développant le business de vos clients
Développez votre business en développant le business de vos clients
 
WordCamp Paris 2015 - Marketing WooCommerce pour augmenter les ventes - Rémi ...
WordCamp Paris 2015 - Marketing WooCommerce pour augmenter les ventes - Rémi ...WordCamp Paris 2015 - Marketing WooCommerce pour augmenter les ventes - Rémi ...
WordCamp Paris 2015 - Marketing WooCommerce pour augmenter les ventes - Rémi ...
 
Wordcamp Paris 2013
Wordcamp Paris 2013Wordcamp Paris 2013
Wordcamp Paris 2013
 

Recently uploaded

history of tau gamma architect.1968.....
history of tau gamma architect.1968.....history of tau gamma architect.1968.....
history of tau gamma architect.1968.....josephiigo
 
Red shadows ringing in Japan's Cyberspace
Red shadows ringing in Japan's CyberspaceRed shadows ringing in Japan's Cyberspace
Red shadows ringing in Japan's Cyberspacesttyk
 
Augmented and Mixed Reality Solutions for Frontline Medical Professionals
Augmented and Mixed Reality Solutions for Frontline Medical ProfessionalsAugmented and Mixed Reality Solutions for Frontline Medical Professionals
Augmented and Mixed Reality Solutions for Frontline Medical Professionalsthirdeyegen65
 
AWS Overview of AWS Clarify, Feature Store, Hyper parameter Tuning
AWS Overview of AWS  Clarify, Feature Store, Hyper parameter TuningAWS Overview of AWS  Clarify, Feature Store, Hyper parameter Tuning
AWS Overview of AWS Clarify, Feature Store, Hyper parameter TuningVarun Garg
 
[Hackersuli]Privacy on the blockchain
[Hackersuli]Privacy on the blockchain[Hackersuli]Privacy on the blockchain
[Hackersuli]Privacy on the blockchainhackersuli
 
UGBINTERNETBANKING FACILITY LAUNCHED.pptx
UGBINTERNETBANKING FACILITY LAUNCHED.pptxUGBINTERNETBANKING FACILITY LAUNCHED.pptx
UGBINTERNETBANKING FACILITY LAUNCHED.pptxRiteshsahu101
 
APAN 57: APNIC Report at APAN 57, Bangkok, Thailand
APAN 57: APNIC Report at APAN 57, Bangkok, ThailandAPAN 57: APNIC Report at APAN 57, Bangkok, Thailand
APAN 57: APNIC Report at APAN 57, Bangkok, ThailandAPNIC
 
Regulation is Coming - Trusted Media Summit 2023
Regulation is Coming - Trusted Media Summit 2023Regulation is Coming - Trusted Media Summit 2023
Regulation is Coming - Trusted Media Summit 2023Damar Juniarto
 
Modern Red Teaming - subverting mature defenses on a budget
Modern Red Teaming - subverting mature defenses on a budgetModern Red Teaming - subverting mature defenses on a budget
Modern Red Teaming - subverting mature defenses on a budgetmatt806068
 
Obstructive jaundice is a medical condition characterized by the yellowing of...
Obstructive jaundice is a medical condition characterized by the yellowing of...Obstructive jaundice is a medical condition characterized by the yellowing of...
Obstructive jaundice is a medical condition characterized by the yellowing of...ssuser7b7f4e
 
Augmented and Mixed Reality Solutions for Aerospace & Defense
Augmented and Mixed Reality Solutions for Aerospace & DefenseAugmented and Mixed Reality Solutions for Aerospace & Defense
Augmented and Mixed Reality Solutions for Aerospace & Defensethirdeyegen65
 

Recently uploaded (13)

Riesgos online
Riesgos onlineRiesgos online
Riesgos online
 
history of tau gamma architect.1968.....
history of tau gamma architect.1968.....history of tau gamma architect.1968.....
history of tau gamma architect.1968.....
 
Red shadows ringing in Japan's Cyberspace
Red shadows ringing in Japan's CyberspaceRed shadows ringing in Japan's Cyberspace
Red shadows ringing in Japan's Cyberspace
 
Augmented and Mixed Reality Solutions for Frontline Medical Professionals
Augmented and Mixed Reality Solutions for Frontline Medical ProfessionalsAugmented and Mixed Reality Solutions for Frontline Medical Professionals
Augmented and Mixed Reality Solutions for Frontline Medical Professionals
 
AWS Overview of AWS Clarify, Feature Store, Hyper parameter Tuning
AWS Overview of AWS  Clarify, Feature Store, Hyper parameter TuningAWS Overview of AWS  Clarify, Feature Store, Hyper parameter Tuning
AWS Overview of AWS Clarify, Feature Store, Hyper parameter Tuning
 
[Hackersuli]Privacy on the blockchain
[Hackersuli]Privacy on the blockchain[Hackersuli]Privacy on the blockchain
[Hackersuli]Privacy on the blockchain
 
UGBINTERNETBANKING FACILITY LAUNCHED.pptx
UGBINTERNETBANKING FACILITY LAUNCHED.pptxUGBINTERNETBANKING FACILITY LAUNCHED.pptx
UGBINTERNETBANKING FACILITY LAUNCHED.pptx
 
APAN 57: APNIC Report at APAN 57, Bangkok, Thailand
APAN 57: APNIC Report at APAN 57, Bangkok, ThailandAPAN 57: APNIC Report at APAN 57, Bangkok, Thailand
APAN 57: APNIC Report at APAN 57, Bangkok, Thailand
 
Regulation is Coming - Trusted Media Summit 2023
Regulation is Coming - Trusted Media Summit 2023Regulation is Coming - Trusted Media Summit 2023
Regulation is Coming - Trusted Media Summit 2023
 
B1 Evaluation.docx
B1 Evaluation.docxB1 Evaluation.docx
B1 Evaluation.docx
 
Modern Red Teaming - subverting mature defenses on a budget
Modern Red Teaming - subverting mature defenses on a budgetModern Red Teaming - subverting mature defenses on a budget
Modern Red Teaming - subverting mature defenses on a budget
 
Obstructive jaundice is a medical condition characterized by the yellowing of...
Obstructive jaundice is a medical condition characterized by the yellowing of...Obstructive jaundice is a medical condition characterized by the yellowing of...
Obstructive jaundice is a medical condition characterized by the yellowing of...
 
Augmented and Mixed Reality Solutions for Aerospace & Defense
Augmented and Mixed Reality Solutions for Aerospace & DefenseAugmented and Mixed Reality Solutions for Aerospace & Defense
Augmented and Mixed Reality Solutions for Aerospace & Defense
 

WPtech: L'API Customizer pour les plugins

  • 1. L'API CUSTOMIZER POUR LES PLUGINS © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 2. REMICORSONAUTOMATTIC / WOOTHEMES / WOOCOMMERCE @REMICORSON - REMICORSON.COM © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 3. © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 4. L'EMETTEUR EST TOUJOURS RESPONSABLE DE L'IMCOMPREHENSION DE SON MESSAGE© REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 5. EXEMPLES © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 6. © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 7. © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 8. © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 9. PENDANT CE TEMPS... © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 10. © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 11. ET POUR LES PLUGINS ? © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 12. © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 13. 3 POSSIBILITÉS © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 14. > Hooker les options du thème > Hooker Les options de votre plugin > Hooker les options d'un autre plugin © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 15. DEMO© REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 16. © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 17. 8 ETAPES © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 18. 1 - AJOUTER UN BOUTON © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 19. © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 20. // Ajout d'options aux paramètres existants add_action( 'woocommerce_products_general_settings', array( $this, 'product_settings' ) ); © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 21. public function product_settings( $settings ) { // Configuration du bouton $customizer_settings[] = array( 'title' => __( 'WooCommerce Customizer', '' ), 'type' => 'title', 'id' => 'product_customizer', ); $customizer_settings[] = array( 'title' => __( 'Pimp my shop!', '' ), 'desc' => __( 'Customize WooCommerce', '' ), 'type' => 'wc_product_customize_button', 'id' => 'product_customizer_button', 'link' => $this->customizer_url, // Attention ! ); $customizer_settings[] = array( 'type' => 'sectionend', 'id' => 'product_customizer_sectionend', ); $settings = array_merge( $customizer_settings, $settings ); return $settings; } © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 22. // Ajout d'une action pour notre bouton add_action( 'woocommerce_admin_field_wc_product_customize_button', array( $this, 'customize_button' ) ); © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 23. // Création du rendu du bouton public function customize_button( $settings ) { ?> <tr valign="top"> <th scope="row" class="titledesc"><?php echo $settings['desc'];?></th> <td class="forminp forminp-<?php echo sanitize_title( $settings['type'] ) ?>"> <a href="<?php echo $settings['link']; ?>"> <button name="<?php echo esc_attr( $settings['id'] ); ?>" id="<?php echo esc_attr( $settings['id'] ); ?>" style="<?php echo esc_attr( $settings['css'] ); ?>" class="button-secondary <?php echo esc_attr( $settings['class'] ); ?>" type="button"> <?php echo $settings['title']; ?> </button> </a> </td> </tr> <?php return true; } © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 24. 2 - DÉTERMINER L'URL DU CUSTOMIZER © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 25. /** * Constructeur */ public function __construct() { self::$_this = $this; $this->_set_customizer_url(); //... } © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 26. // Définition de l'URL du Customizer private function _set_customizer_url() { $url = admin_url( 'customize.php' ); $url = add_query_arg( 'wc-product-customizer', 'true', $url ); $url = add_query_arg( 'url', wp_nonce_url( site_url() . '/?wc-product-customizer=true', 'preview-shop' ), $url ); // Passage d'un marqueur d'URL $url = add_query_arg( 'return', urlencode( add_query_arg( array( 'page' => 'wc-settings', 'tab' => 'products' ), admin_url( 'admin.php' ) ) ), $url ); // URL de retour $this->customizer_url = esc_url_raw( $url ); return true; } © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 27. © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 28. 3 - CRÉER LES OPTIONS DU CUSTOMIZER © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 29. add_filter( 'customize_register', array( $this, 'customizer_sections' ), 40 ); add_filter( 'customize_register', array( $this, 'customizer_settings' ) ); add_filter( 'customize_register', array( $this, 'customizer_controls' ), 50 ); © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 30. // Ajout de section $wp_customize->add_section( 'wc_product_colors', array ( 'title' => __( 'WooCommerce', '' ), 'capability' => 'edit_theme_options', 'priority' => 10, ) ); © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 31. $wp_customize->add_setting( 'woocommerce_buttons_background_color', array( 'type' => 'option', // Attention ! 'default' => '#f5f5f5', 'transport' => 'postMessage', ) ); © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 32. $wp_customize->add_control( new WP_Customize_Color_Control( $wp_customize, 'wc_product_bg_color_control', array( 'label' => __( 'Button Background Color', '' ), 'priority' => 10, 'section' => 'wc_product_colors', 'settings' => 'woocommerce_buttons_background_color', ) ) ); © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 33. 4 - CHARGER LA PAGE CONCERNÉE © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 34. // Redirection du customizer sur la page boutique add_action( 'template_redirect', array( $this, 'load_shop_page' ) ); © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 35. public function load_shop_page( $wp_query ) { // chargement conditionnel basé sur get_query_var if ( get_query_var( $this->_trigger ) ) { wp_redirect( get_permalink( get_option( 'woocommerce_shop_page_id' ) ) ); exit; } return $wp_query; } © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 36. PETITE PAUSE © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 37. © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 38. © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 39. © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 40. © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 41. © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 42. 5 - AJOUTER UN MARQUEUR © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 43. public function __construct() { self::$_this = $this; // Définition d'un marqueur d'URL $this->_trigger = 'wc-product-customizer'; } © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 44. // Ajout du marqueur dans l'URL add_filter( 'query_vars', array( $this, 'add_query_vars' ) ); © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 45. public function add_query_vars( $vars ) { $vars[] = $this->_trigger; return $vars; } © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 46. 6 - FAIRE UN NETTOYAGE DE PRINTEMPS © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 47. if ( isset( $_GET[ $this->customizer_trigger ] ) ) { //... } © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 48. // Suppression des options du thème add_filter( 'customize_register', array( $this, 'remove_sections' ), 40 ); © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 49. public function remove_sections( $wp_customize ) { global $wp_customize; $wp_customize->remove_section( 'themes' ); return true; } © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 50. // Supprime les panels non désirés public function remove_panels( $wp_customize ) { global $wp_customize; // crée une erreur de type 'undefined object notice' // bug WordPress core //$wp_customize->remove_panel( 'nav_menus' ); // Astuce $wp_customize->get_panel( 'nav_menus' )->active_callback = '__return_false'; return true; } © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 51. © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 52. 7 - AJOUT DE CSS & JS © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 53. ( function( $ ) { 'use strict'; wp.customize( 'woocommerce_buttons_background_color', function( value ) { value.bind( function( newval ) { $( '.button' ).css( 'background-color', newval ); } ); } ); } )( jQuery ); © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 54. public function enqueue_customizer_script() { wp_enqueue_script( 'woocommerce-product-customizer-live-preview', WC_PRODUCT_CUSTOMIZER_PLUGIN_URL . '/assets/js/customizer.js', array( 'jquery', 'customize-preview' ), WC_PRODUCT_CUSTOMIZER_VERSION, true ); return true; } © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 55. add_filter( 'wp_footer', array( $this, 'add_styles' ) ); © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 56. public function add_styles() { $styles = "n<style type='text/css' media='screen'>n"; $bg_color = '.woocommerce a.button { background-color: '; $bg_color .= get_option( 'woocommerce_buttons_background_color', '#f5f5f5' ) $bg_color .= '; }'; $styles .= $bg_color; $styles .= "n</style>n"; echo $styles; } © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 57. 8 - LUSTRER LA BÊTE... © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 58. © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 59. © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 60. // Afficher uniquement nos options if ( isset( $_GET[ $this->customizer_trigger ] ) ) { add_filter( 'customize_control_active', array( $this, 'control_filter' ), 10, 2 ); } © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 61. public function control_filter( $active, $control ) { if ( in_array( $control->section, array( 'wc_product_colors' ) ) ) { return true; } return false; } © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 62. QUESTIONS ? © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015
  • 63. RDV À 14H00AVEC JULIEN OGER & PIERRE DARGHAM " PENSEZ WEB-PERFORMANCE AVEC WORDPRESS " © REMI CORSON 2015 - WPtech Nantes 5 Déc. 2015