web-dev-qa-db-fra.com

Supprimer les commentaires HTML des plugins dans l'en-tête

Est-ce que quelqu'un connaît une fonction ou sait comment supprimer <!-- plugin inserted stuff--> de l'en-tête et du pied de page afin qu'ils ne soient pas visibles lors de la visualisation de la source?

3
Arkuen

C'est possible. Je l'ai testé sur mon propre serveur, mais il serait peut-être préférable de supprimer les commentaires vous-même, ou de les mettre en tant que commentaires php, peu importe.

J'ai seulement fait la démonstration de cela avec header.php et utilisé le code de cette page pour m'aider.

Tout d’abord, prenez tout le contenu de votre header.php (ou de tout autre fichier pour lequel vous souhaitez supprimer des commentaires) et mettez-les dans un nouveau fichier comme header2.php - call peu importe ce que vous voulez, souvenez-vous-en pour plus tard. Ensuite, dans votre header.php , maintenant vide, mettez le code php suivant:

<?php
// Remove unwanted HTML comments
ob_start();
include 'header2.php';
$newheader = ob_get_clean();
remove_html_comments($newheader);
function remove_html_comments($content) {
    echo preg_replace('/<!--(.|\s)*?-->/', '', $content);
}
?>

Remember : Si vous avez nommé votre nouveau fichier avec un nom autre que header2.php, changez son nom en conséquence sur la ligne 4 du code!

Il stocke la réponse de votre ancien header.php dans un output buffering , puis exécute le code astucieux que nous avons reçu de la publication que j'ai liée à précédemment et fait écho à la sortie.

Cela a produit l’effet souhaité et le code en écho contenait toujours des informations telles que la page sur laquelle j’étais, etc. - profitez-en! (Ps. Utiliser à vos risques et périls)

Comme suggéré par un autre membre, vous pouvez simplement nommer header2.php comme suit: header-custom.php , ce qui vous permet en fait d’utiliser get_header (custom) , au lieu de devoir utiliser un tampon de sortie (je pense ... pas trop sûr, n’a pas été testé). C'est probablement une méthode de nommage plus correcte. Au moins, cela pourrait vous aider si vous créez un thème pour le vendre.

2
Adam