2. Sommaire
Prérequis Réglages du Plugin
Introduction Menu & Sous-Menu
Avant de commencer Page d’options
Le Header Intégration WordPress
Licence du Plugin Tables Personnalisées
Les fonctions Activate et Désinstaller le Plugin
Desactivate Sécurité du Plugin
Internationalisation Publier votre Plugin
Les Constantes Soumettre votre Plugin
Actions & Filters
3. Prérequis
Avoir des notions dans le langage PHP
Avoir des connaissances rudimentaire à
l’HTML
Un peu d’Anglais
4. Introduction
WordPress populaire.
Facile à personnaliser.
Comprendre l’API de WordPress.
5. Avant de commencer
Choisir un nom unique pour votre extensions.
Les fichiers des plugins sont dans le répertoire wp-
content/plugins/ de WordPress.
Encodez toujours vos fichiers en UTF-8
Testez toujours l’extension avec la dernière version
de WordPress.
6. Le Header
Doit être au top
Doit être seulement sur le fichier principal
Exemple de Header
7. Licence du Plugin
Quand on veut créer un plugin pour le public, il est
recommandé d’inclure la licence du plugin juste en
bas du Header.
La licence n’est pas une garantie qui va vous lier au
résultat que ça pourrai apporter aux différents sites
qui utilisent votre plugin.
10. Internationalisation
L’internationalisation (i18n).
L’internationalisation n’est pas obligatoire.
1. La fonction _ _():
2. La fonction _e():
3. La fonction _ _ngettext (pluriel): Disant que vous
souhaitez traduire la phrase suivante:
11. Internationalisation
Ceci marche très bien si vous avez un seul
message, mais si vous avez plus qu’un message? C’est
là que la fonction _ _ngettext résout ce problème.
12. Internationalisation
Maintenant que vous avez préparé votre plugin à la
traduction, vous devriez charger le fichier de
localisation:
13. Les Constantes
➤ WP_CONTENT_URL: URL complet pour wp-
content
➤ WP_CONTENT_DIR: Chemin du serveur du
répertoire wp-content
➤ WP_PLUGIN_URL: URL complet pour le
répertoire plugins
➤ WP_PLUGIN_DIR: Chemin du serveur du
répertoire plugins
➤ WP_LANG_DIR: Chemin du serveur pour le
répertoire langage
14. Actions & Filters
1. Actions: Les actions sont les crochets que le noyau de
WordPress lance à des points spécifiques en cours
d'exécution, ou lorsque des événements spécifiques.
Votre plugin peut spécifier que l'une ou plusieurs de
ses fonctions PHP sont exécutés à ces points.
Syntaxe:
15. Actions & Filters
2. Filtres: Les filtres sont les crochets que WordPress
lance pour modifier le texte de divers types, avant
de l'ajouter à la base de données ou de l'envoyer au
navigateur. Votre plugin peut spécifier que l'une ou
plusieurs de ses fonctions PHP est exécuté pour
modifier le contenu du texte ou des données.
Syntaxe:
16. Actions & Filters
Liste des Filtres:
http://codex.wordpress.org/Plugin_API/Filter_Ref
erence
Liste des Actions:
http://codex.wordpress.org/Plugin_API/Action_Re
ference
Un autre lien très recommandé:
http://wordpress.org/extend/plugins/
27. Page d’options
Sauvegarder des options facilement
Comment créer des pages pour ces options ???
Créer un menu facilement
Et le contenu de sa page?
Créer une page d’option = Créer la fonction de la
page d’options que vous avez définit lors de la
création de son menu.
33. Meta Box
1. Meta Box:
Pour ajouter une meta box il faut utiliser la fonction
add_meta_box en utilisant les 6 paramètres suivants:
Chaque paramètre indique comment et ou votre
meta box sera affiché.
34. Meta Box
$id: l’attribut ID CSS du meta box
$title: Le titre affiché dans le header du meta box
$callback: Nom de la fonction pour afficher vos
informations de Meta Box
$page: Ou vous voulez afficher votre Meta Box
(’post’, ‘page’, or ‘link’)
$context: La partie de la page que le Meta Box doit
afficher (’normal’,‘advanced’, or ‘side’)
$priority: La priorité dans le context d’affichage du
Meta Box (’high’, ‘core’, ‘default’, or ‘low’)
35. Meta Box
Maintenant il faut créer la fonction
wpday_meta_box
37. Meta Box
Création du Meta Box OK
Création du formulaire OK
Sauvegarder les données à chaque enregistrement d’une
page Pas encore : wpday_save_meta_box qui doit être
déclencher après chaque action hook save_post
38. Meta Box
Affichage des valeurs de vos éléments MetaBox dans
votre site:
42. Widget
Pour commencer, il faut étendre la classe WP_Widget
en créant une nouvelle classe avec un nom unique
Il reste à créer le formulaire des réglages du Widget
44. Widget
Vous n’avez pas besoin d’ajouter la balise <form> ou
le bouton de soumission, ceci est pris en charge par
la classe de Widget.
Il reste à sauvegarder les réglages de votre Widget:
45. Widget
La dernière fonction de votre classe
wpday_widget, c’est celle qui affiche votre widget:
48. Désinstaller le Plugin
Une fonctionnalité intéressante à inclure dans votre
plugin
Le meilleur scénario de désinstallation est de ne
laisser aucune trace du plugin.
49. Sécurité du Plugin
Si un plugin contient des failles de sécurité, il ouvre
l'ensemble du site WordPress pour les pirates à faire
des ravages. WordPress propose certains outils
intégrés de sécurité que vous pouvez utiliser pour
vous assurer que vos plugins sont aussi sûrs que
possible.
50. Nonces
C’est quoi les Nonces?
Et comment créer manuellement et
vérifier les nonces?
52. Nonces
Soumission de formulaire vérifier votre clé secrète nonce
en utilisant la fonction check_admin_referer
Cette technique permet de se protéger contre le Cross-Site
Scripting ou XSS.
53. Validation de données
Nommage standard des fonctions de validations:
1) esc_: le prefix de la fonction d’échappement
2) attr_: le contexte d’échappement (attr, html, js, sql, url, et url_raw)
3) _e: le suffix optionnel de traduction (_ _ et _e)
54. Publier votre Plugin
Restrictions:
Plugin doit être sous licence GPL
Plugin ne doit pas faire quelque chose d'illégal ou
moralement choquant
Vous devez utiliser Subversion (SVN) pour héberger
votre plugin
Plugin ne doit pas inclure des liens externes sur le
site de l'utilisateur (tel que « Powered by ») sans
demander la permission à l'utilisateur du plugin
55. Soumettre votre Plugin
1. Créer un compte WordPress.org
2. Sur « Développer Center » cliquez sur « Add your
Plugin »
3. Remplir le formulaire:
Nom du plugin (Important)
Description du Plugin (fonctionnalités, but du
plugin, les instructions d'installation)
URL du Plugin (non requis).
56. Soumettre votre Plugin
4. Créez votre fichier readme.txt (Obligatoire)
Récupérer le standard de fichier sur votre compte
Wordpress.org Developper Center Readme Standard
Remplir le fichier avec vos informations
Validez votre fichier à l’aide du validateur de
WordPress: WordPress.org Developper Center
Readme Validator
5. Configuration SVN: le répertoire de Plugin de
WordPress est sous SVN et pour publier un Plugin, vous
auriez besoin d’installer et de configurer un client SVN
(vous pouvez utiliser TortoiseSVN)
57. Soumettre votre Plugin
Après configuration de SVN 3 répertoires vont
être créé
branches
tags
trunk
Mettre le contenu de votre plugin dans le
répertoire trunk avec la présence du fichier readme.txt
58. Soumettre votre Plugin
Are you ready? Yes !
1. Commitez le contenu du trunk
2. Taguez votre version
Après 15mn, le plugin apparaitera dans le
répertoire de Plugin de WordPress