wake-up-neo.net

HTML-Kommentare von Plugins in der Kopf-/Fußzeile entfernen

Wüsste jemand eine Funktion oder wie man <!-- plugin inserted stuff--> aus der Kopf- und Fußzeile entfernt, damit sie beim Anzeigen der Quelle nicht sichtbar sind?

3
Arkuen

Das ist möglich. Ich habe es auf meinem eigenen Server getestet, aber es ist möglicherweise besser, die Kommentare selbst zu entfernen oder sie unabhängig davon als PHP-Kommentare zu speichern.

Ich habe dies nur mit header.php demonstriert und den Code von dieser Seite verwendet, um mir zu helfen.

Nehmen Sie zunächst den gesamten Inhalt Ihrer header.php (oder einer beliebigen anderen Datei, aus der Sie Kommentare entfernen möchten) und fügen Sie sie in eine neue Datei wie header2.php ein - nennen Sie sie wie Sie möchten , erinnere dich nur für später. Tragen Sie dann in Ihre jetzt leere header.php den folgenden PHP-Code ein:

<?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);
}
?>

Denken Sie daran,: Wenn Sie Ihrer neuen Datei einen anderen Namen als header2.php gegeben haben, ändern Sie den Namen in Zeile 4 des Codes entsprechend!

Es speichert die Antwort von Ihrer alten header.php in einem Ausgabepuffer , führt dann den raffinierten Code aus, den wir von dem zuvor verlinkten Beitrag erhalten haben, und gibt die Ausgabe wieder.

Dies erzeugte den gewünschten Effekt, und der Echo-Code zeigte immer noch Dinge wie die Seite, auf der ich war, usw. - viel Spaß! (Ps. Verwendung auf eigenes Risiko)

Wie von einem anderen Mitglied vorgeschlagen, können Sie header2.php einfach so benennen wie header-custom.php, wodurch Sie get_header (custom) verwenden können, anstatt zu haben einen Ausgabepuffer verwenden (ich denke ... nicht zu sicher, habe nicht getestet). Dies ist wahrscheinlich eine korrektere Methode zur Benennung. Zumindest könnte es hilfreich sein, wenn Sie ein Thema erstellen, um es zu verkaufen.

2
Adam