Home Tutoriais CMS Padrão de codificação PHP para WordPress


Antes de desenvolver alguma solução para seu WordPress, é importante saber da existência de algumas normas criadas com intuito de padronizar o código-fonte do CMS.

Seguir tais padrões não é obrigatório, porém é muito interessante quando se quer compartilhar algo desenvolvido e que outras pessoas entendam facilmente o material.

Aspas simples e duplas

Use aspas simples e duplas quando apropriado. Se você não estiver tratando nada na string, use use aspas simples. Você nunca deve escapar aspas HTML numa string, porque você apenas precisa alternar entre os tipos de aspas, assim:

echo '<a href="link" title="Título">Nome do link</a>';
echo "<a href='$link' title='$titulodolink'>$nomedolink</a>";

A única exceção é no JavaScript, que às vezes requer aspas simples ou duplas. Textos que venham dentro de atributos devem passar pelo attribute_escape(), assim as aspas simples ou duplas não fecham o atributo e invalidam o XHTML causando um problema de segurança.

Indentação

Sua indentação deve sempre refletir uma estrutura lógica. Use tabs reais e não espaços, pois isso permite maior flexibilidade entre clientes.

Regra de ouro: tabs devem ser usadas no início das linhas, e espaços devem ser usados no meio das linhas.

Exceção: se você tem um bloco de código que seja mais legível se estiver alinhado, use espaços:

$valor
$valor2
$valor3
$valor4

= ‘algumvalor’;
= ‘algumvalor2’;
= ‘algumvalor3’;
= ‘algumvalor4’;

Estilo das chaves

Chaves devem ser usadas em múltiplos blocos. Se você tiver um bloco muito grande, considere quebrá-lo em dois ou mais blocos ou funções. Caso seja realmente necessária a existência desse longo bloco, por favor ponha um pequeno comentário no final para que as pessoas percebam de relance o que aquela chave de fechamento está fechando.

if ( condicao ) { acao1(); acao2(); } elseif ( condicao2 && condicao3 ) { acao4(); } else { acaopadrao(); }

Normalmente, isso é apropriado para blocos lógicos, maiores que cerca de 35 linhas, mas qualquer código que não seja intuitivamente óbvio pode ser comentado. Blocos de uma linha apenas podem omitir as chaves para ficar mais concisos:

if ( condicao ) acao1(); else acao2();

Uso de espaços

Sempre coloque espaços:

Após as vírgulas

array( 1, 2, 3 )

Em ambos os lados das atribuições de operadores lógicos

X == 23

Em ambos os lados dos parênteses

foreach ( $foo as $bar ) {

Quando definindo ou chamando funções, entre os parâmetros

function minhafuncao( $param1 = 'foo', $param2 = 'bar' ) {
minhafuncao( $param1, outrafuncao( $param2 ) );

Variáveis, funções, nomes de arquivos e operadores

Use letras minúsculas em nomes de variáveis e funções. Separe as palavras por sublinhados

(underscores).

function algum_nome( $alguma_variavel ) { […] }

Arquivos devem ser nomeados descritivamente usando letras minúsculas. Hífens devem separar as palavras.

nome-do-meu-plugin.php

Sinalização de parâmetros

Para sinalizar parâmetros para funções, prefira valores em string a apenas true e false quando chamar funções; e sempre com nomes auto-explicativos. Incorreto function comer( $oque, $devagar = true ) { comer( 'cogumelos' ); comer( 'cogumelos', true ); // O que significa true? comer( 'comida de cachorro', false ); // O que significa false? O oposto de true? ... }Já que o PHP não suporta argumentos em forma de nomes, os valores dos sinalizadores não têm significados e toda vez que aparece uma função como essa nós temos que pesquisar pela definição da função. O código pode ficar mais legível se usarmos textos descritivos, em vez de boleanos: Correto

function comer( $oque, $velocidade = 'devagar' ) {
comer( 'cogumelos' );
comer( 'cogumelos', 'devagar' );
comer( 'comida de cachorro', 'rapido' );

... }
   

Leave a Reply

This blog is kept spam free by WP-SpamFree.