Existe-t-il un moyen d'exécuter automatiquement get_header()
au début du modèle et get_footer()
à la fin de celui-ci?
Actuellement, mon code est trop répétitif avec ces appels.
Je cherchais un moyen de le faire, mais je ne le trouve pas dans Google.
En regardant wp-includes/template-loader.php
… il semble y avoir un moyen:
if ( $template = apply_filters( 'template_include', $template ) )
include( $template );
Vous pouvez vous connecter à ce filtre, gérer l'inclusion dans une fonction de rappel et renvoyer FALSE
.
Exemple de code, non testé:
add_filter( 'template_include', function( $template ) {
get_header();
include $template;
get_footer();
return FALSE;
});
@scribu propose une méthode de réduction de la répétition de code dans les modèles WordPress qu’il appelle wrappers de thème , ce qui donne ce que vous recherchez. Le roots theme utilise une version légèrement modifiée de version de cette méthode .