Drupal

Eines de suport per el desenvolupament Drupal: PHP CodeSniffer

Avui us presentem una quarta eina que us pot ajudar en el desenvolupament de projectes Drupal. Es tracta de PHP CodeSniffer.

Drauta agencia digitalDrauta

Eines de suport per el desenvolupament Drupal: PHP CodeSniffer

Què és PHP CodeSniffer?

PHP CodeSniffer és una llibreria que ens permet escanejar el codi font dels nostres projectes en funció d'un conjunt de regles anomenades "sniffs" per tal de saber si els nostres projectes les compleixen o no. Per a Drupal existeixen dos "sniffs" que són "Drupal" i "DrupalPractice". El primer comprova regles més genèriques i el segon és per ajudar als desenvolupadors de mòduls a evitar els errors més comuns.

Com instal·lar PHP CodeSniffer?

Per a instal·lar-ho al nostre entorn de desenvolupament, haurem de seguir els següents passos (instruccions per a Drupal 7 en un entorn Macintosh):

  1. Anem al repositori de GitHub i ens baixem la branca 1.x de l'eina: https://github.com/squizlabs/php_codesniffer/tree/1.5
  2. Ho descomprimim tot a una carpeta qualsevol, però preferiblement amb un path curt (per exemple a la home del nostre usuari del mac). Arribats a aquest punt, només ens falta obtenir els dos sniffs de Drupal.
  3. Ens baixem la última versió del mòdul coder (branca 7.x-2.x): https://www.drupal.org/project/coder
  4. Un cop descomprimit, copiem la carpeta coder/coder_sniffer/Drupal a dins de PHP_CodeSniffer/CodeSniffer/Standards. No fa falta que instal·lem el mòdul.
  5. Ens baixem la versió 1.0 del mòdul drupalpractice des d'aquí: https://www.drupal.org/project/drupalpractice/releases/7.x-1.0 NOTA: Encara que aquest mòdul estigui "deprecated" a favor del coder, és l'única manera d'obtenir l'sniff DrupalPractice per a Drupal 7. En aquest cas tampoc fa falta que instal·lem el mòdul.
  6. Un cop descomprimit, copiem la carpeta drupalpractice/DrupalPractice dins de PHP_CodeSniffer/CodeSniffer/Standards.
  7. Editem el bash_profile amb la comanda vi ~/.bash_profile i afegim les dues línies del requadre al fitxer (IMPORTANT: haureu de canviar la ruta al PHP_CodeSniffer en funció del lloc a on l'hagueu instal·lat vosaltres). Un cop afegides les dues línies, guardem el fitxer i executem la comanda source ~/.bash_profile perquè els canvis tinguin efecte.
    alias drupalcs="php /Users/drauta/PHP_CodeSniffer/scripts/phpcs --standard=Drupal --extensions='php,module,inc,install,test,profile,theme,css,info,txt,md'"
    
    alias drupalcsp="php /Users/drauta/PHP_CodeSniffer/scripts/phpcs --standard=DrupalPractice --extensions='php,module,inc,install,test,profile,theme,css,info,txt,md'"
  8. Anem al directori del mòdul que volem escanejar i fem les comprovacions necessàries amb les comandes drupalcs (sniff Drupal) i drupalcsp (sniff DrupalPractice). Al executar qualsevol d'aquestes dues comandes, obtindrem un llistat d'errors/avisos dels nostres fitxers PHP. Un cop aquestes comandes no retornin cap missatge, voldrà dir que el nostre projecte compleix ja amb tots els estandards de Drupal. Al requadre de sota podem veure com executar les dues comandes.
    drupalcs NOM_FITXER
    drupalcs *
    drupalcsp NOM_FITXER
    drupalcsp *

Més informació:

https://www.drupal.org/node/1419988

https://www.drupal.org/node/1587138

Vols començar un nou projecte amb nosaltres?

Necessites un servei per a la teva web? Descobreix com et podem ajudar i no dubtis en contactar amb nosaltres.