PHP Code Sniffer pour WordPress

PHP Code Sniffer

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:


php -v

Vérifiez également que le gestionnaire de dépendances Composer est également installé.


composer -v

Pour l’installation procédez comme suit:


composer create-project wp-coding-standards/wpcs:dev-master --no-dev

Tester son code avec PHP Code Sniffer

Depuis le dossier où se trouvent phpcs et phpcbf soit: /wpcs/vendor/bin utilisez les commandes suivantes:


php phpcs --standard=Wordpress /chemin_vers_votre_code

Si votre code contient des ERROR(S) et des WARNING(S), utilisez phpcbf pour les corriger automatiquement.


php phpcbf --standard=Wordpress /chemin_vers_votre_code

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

Leave a Reply