Ich möchte nicht Dein ganzes Template debuggen, das ist mir zu lang. Ich möchte einen Skript und ein Template, dass dieses Problem klar und deutlich reproduziert.
Dieses Reproduktions-Skript sollte auf keinen Fall das reservierte Wort POST enthalten, weil dieses für HTML und $_POST reserviert ist. vLIB verwendet einen solchen Funktionsnamen nicht.
Nenn die Funktion wie Du willst, aber bitte nicht "POST". Da sich das Problem mit "x_post" wahrscheinlich auch reproduzieren lässt, sollte es aber möglich sein, ein kurzes, übersichtliches Skript zu schreiben, dass den Fehler auf den Punkt bringt.
Die genannte Funktion macht auch keinen Sinn, weil man einfach schreiben kann:
<?php
$inhalt_der_variable = htmlspecialchars(stripslashes(strip_tags($_POST[inhalt_der_variable])));
?>
Ausnahme: Man will das für jede Variable einsetzen, dann sollte man die Funktion aber eher "html_code_bereinigen" oder so nennen.
$_POST ist eine sogenannte "Superglobal" und überall verfügbar. Entweder man verwendet das direkt oder nimmt eine Zuweisung vor, wie sie oben beschrieben ist.
Danke und Gruß
Claus