insert_head

Le pipeline insert_head permet d’ajouter des contenus dans la partie <head> d’une page HTML :

  • au moment de l’appel à #INSERT_HEAD si la balise est définie,
  • sinon juste avant la fin du header (avant </head>) si la fonction f_insert_head est définie dans le pipeline affichage_final, par exemple avec ceci dans mes_options.php :
$GLOBALS['spip_pipeline']['affichage_final'] .= '|f_insert_head';

Le pipeline reçoit le contenu à ajouter et retourne donc un contenu :

function prefixPlugin_insert_head($flux){
    $flux .= "<!-- un commentaire pour rien ! -->\n";
    return $flux;
}

Exemple

Ajouter un appel à une fonction jQuery, ici pour afficher une barre d’outil sur les balises textarea des formulaires de Crayons (avec le plugin Porte Plume) :

function documentation_insert_head($flux){
    $flux .= <<<EOF
<script type="text/javascript">
<!--
(function($){
$(document).ready(function(){
    /* Ajouter une barre porte plume sur les crayons */
    function barrebouilles_crayons(){
        $('.formulaire_crayon textarea.crayon-active').barre_outils('edition');
    }
    barrebouilles_crayons();
    onAjaxLoad(barrebouilles_crayons);
});
})(jQuery);
-->    
</script>
EOF
;
    return $flux;
}

La fonction JavaScript onAjaxLoad permet de rappeler la fonction donnée en paramètre lors d’un rechargement AJAX d’un élément de la page.

Auteur Matthieu Marcillaud Publié le : Mis à jour : 03/02/10

Traductions : English, français