web-dev-qa-db-ja.com

ヘッダ/フッタのプラグインからHTMLコメントを削除する

誰かがソースを見たときに見えないようにするためにヘッダーやフッターから<!-- plugin inserted stuff-->を削除する方法や関数を知っていますか?

3
Arkuen

これは可能です。私は自分のサーバーでそれをテストしましたが、それでもコメントを自分で削除するか、それに関係なくphpコメントとして置くほうが良いかもしれません。

私はこれをheader.phpでデモしただけで、私の手助けとして このページ のコードを使用しました。

まず最初に、header.phpの内容全体(またはコメントを削除したい他のファイル)を取り、header2.phpのような新しいファイルに入れます。あとで覚えておいてください。次に、空になったheader.phpに次のphpコードを入力します。

<?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:新しいファイルにheader2.php以外の名前を付けた場合は、それに応じてコードの4行目で名前を変更してください。

それはあなたの古いheader.phpからのレスポンスを output buffering に格納し、そして先ほどリンクした記事から得た気の利いたコードを実行し、そして出力をエコーバックします。

これは望ましい効果を生み出しました、そしてエコーされたコードはまだ私がいたページなどのようなものを示しました - 楽しんでください! (Ps。自己責任で使用してください)

他のメンバーが示唆しているように、header-custom.phpの行に沿ってheader2.phpに何か名前を付けるだけで、実際にはget_header(custom)を使用できます。出力バッファを使用する(私は思う……よくわからない、テストされていない)これはおそらくより正しい命名方法です。少なくともそれを売るテーマを作っている場合には少なくとも役に立ちます。

2
Adam