@Byran M. J'ai tendance à utiliser deux constructions que je ne vois pas souvent d'autres développeurs WordPress utiliser souvent, ce qui me surprend, mais je les aime beaucoup.
1.) Heredocs
Vous pouvez stocker de gros blocs de texte sous forme de chaîne heredocs qui pourrait ressembler à ceci afin que je puisse stocker le souci de mélanger les guillemets simples et doubles:
$html=<<<HTML
<input type="{$type}" size="{$size}" id="{$id}" class="{$class}" value="{$value}" />
HTML;
Notez que les variables peuvent être transmises à une fonction sous forme de tableau puis extract()
éditées ou vous pouvez les affecter de différentes manières. Notez également que j'utilise les accolades non pas parce qu'elles sont toujours obligatoires mais qu'elles facilitent la lecture du code. (Bien sûr, des fonctions comme the_content()
être sensiblement différentes de get_the_content()
WordPress ne facilitent pas toujours ce style de codage.)
De plus, bien que cela ne vous concerne pas, si j'utilise des noms hérédoc comme HTML, SQL, etc., mon IDE PhpStorm effectue une injection de syntaxe et me donnera une saisie semi-automatique et une coloration syntaxique dans l'hérédoc.
2.) Concaténation de chaînes à l'aide d'un tableau
L'autre idiome que j'aime utiliser est de collecter le contenu dans un tableau puis dans implode()
le tableau. Bien que je n'ai jamais évalué cela, cela pourrait être moins utile que je suppose.Je sais que la concaténation de chaînes répétée est un tueur car les chaînes deviennent plus grandes (si quelqu'un sait pourquoi cette approche n'est pas meilleure ou si vous connaissez une meilleure approche, je aimerais entendre des commentaires):
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);
}