@Byran M. Eu costumo usar duas construções que muitas vezes não vejo outros desenvolvedores do WordPress usando, o que me surpreende, mas eu gosto muito delas.
1.) Heredocs
Você pode armazenar grandes blocos de texto como < strong> heredocs string que pode se parecer com isso para que eu possa armazenar a preocupação de 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, em seguida, extract()
ed, ou você pode atribuí-las de outras maneiras. Observe também que eu uso as chaves não porque elas são sempre necessárias, mas facilitam a leitura do código. (É claro que com funções como the_content()
sendo materialmente diferentes de get_the_content()
, o WordPress nem sempre facilita esse estilo de codificação.)
Além do mais, embora possa não ser relevante para você é se eu usar nomes heredoc como HTML, SQL, etc., então meu IDE PhpStorm faz a injeção de sintaxe e me dará autocomplete e coloração de sintaxe dentro do heredoc.
2.) Concatenação de String usando uma Matriz
O outro idioma que eu gosto de usar é coletar o conteúdo em uma matriz e, em seguida, implode()
da matriz. Embora eu nunca tenha comparado isso, então poderia ser menos útil do que eu supor que eu sei que a concatenação de string repetida é um assassino à medida que as strings aumentam (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);
}