@Byran M. Costumo usar duas construções que nem sempre vejo outros desenvolvedores do WordPress usando, o que me surpreende, mas gosto muito delas.
1.) Heredocs
Você pode armazenar grandes blocos de texto como uma sequência heredocs que pode parecer assim, para que eu possa se preocupar em misturar aspas simples e duplas:
$html=<<<HTML
<input type="{$type}" size="{$size}" id="{$id}" class="{$class}" value="{$value}" />
HTML;
Observe que as variáveis podem ser passadas para uma função como uma matriz e extract()
editadas ou você pode atribuí-las de outras maneiras. Observe também que eu uso os aparelhos não porque eles sempre são necessários, mas tornam o código mais fácil de ler. (É claro que funções como the_content()
ser materialmente diferente do get_the_content()
WordPress nem sempre facilitam esse estilo de codificação.)
Além do mais, embora possa não ser relevante para você, se eu usar nomes de heredoc como HTML, SQL etc., meu IDE PhpStorm fará a injeção de sintaxe e fornecerá o preenchimento automático e a coloração de sintaxe no heredoc.
2.) Concatenação de strings usando uma matriz
O outro idioma que eu gosto de usar é coletar o conteúdo em uma matriz e depois implode()
na matriz. Embora eu nunca tenha comparado isso, poderia ser menos útil do que eu suponho que sei que a concatenação repetida de strings é um assassino à medida que as strings ficam maiores (se alguém souber por que essa abordagem não é melhor ou se você conhece uma abordagem melhor, eu adoraria ouvir feedback):
function my_get_form_and_fields($input_items) {
$html = array();
$html[] = '<form name="my_form" method="get">';
foreach($input_items as $input_item) {
extract($input_item);
$html=<<<HTML
<input type="{$type}" size="{$size}" id="{$id}" class="{$class}" value="{$value}" />
HTML;
$html[] = '</form>';
return implode("\n",$html);
}