Utilisez PHP Code Sniffer pour vérifier que le code de vos thèmes et plugin respectent bien le standard WordPress.
Introduction
Les langages très hauts niveaux dont PHP n’ont pas de contraintes syntaxiques. En effet, il est parfaitement possible d’écrire l’intégralité de son code sur une seule et même ligne, le tout sans espace. Pour le commun des mortels cela devient vite illisible, mais pas pour l’interpréteur PHP qui n’y prêterait même pas attention.
Pour remédier à ce problème, des normes internationales telles que PSR (pour ne citer que la plus connue), ont vu le jour afin de structurer le code. Cela permet à une équipe de collaborer plus facilement et de créer un code source homogène.
PHP Code Sniffer est un ensemble de deux scripts:
- phpcs analyse de script PHP afin de s’assurer qu’ils respectent bien les normes d’écritures internationales telles que PSR-1, PSR2, Squiz, Zend, Pear, MySource et Phpcs.
- phpcbf corrige automatiquement toutes les erreurs rencontrées.
Le standard WordPress n’est pas installé par défaut. C’est pourquoi JD Grimes, le développeur de WordPress-Coding-Standards propose une installation tout en un via Composer.
Installer PHP Code Sniffer avec le standard WordPress
PHP Code Sniffer requiert PHP 5.1.2 ou supérieur. Pour vérifier votre version taper la ligne suivante dans le terminal:
[bash]php -v
[/bash]Vérifiez également que le gestionnaire de dépendances Composer est également installé.
[bash]composer -v
[/bash]Pour l’installation procédez comme suit:
[bash]composer create-project wp-coding-standards/wpcs:dev-master –no-dev
[/bash]Tester son code avec PHP Code Sniffer
Depuis le dossier où se trouvent phpcs et phpcbf soit: /wpcs/vendor/bin utilisez les commandes suivantes:
[bash]
php phpcs –standard=Wordpress /chemin_vers_votre_code
[/bash]
Si votre code contient des ERROR(S) et des WARNING(S), utilisez phpcbf pour les corriger automatiquement.
[bash]
php phpcbf –standard=Wordpress /chemin_vers_votre_code
[/bash]
Liens utiles
Github officiel de PHP Code Sniffer https://github.com/squizlabs/PHP_CodeSniffer
Github officiel du WordPress-Coding-Standards https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards
Site officiel de Composer https://getcomposer.org