Neulich ist es mir während einer Template-Anpassung tatsächlich passiert. Ich habe mich von meinem eigenen Shop-System ausgesperrt und konnte mich nicht mehr in den Admin-Bereich einloggen.
Das Problem war folgendes: In dem erstellten Shop soll auf Kundenkonten komplett verzichtet werden. Aus diesem Grund habe ich zum einen im Backend unter “Kundendetails” -> “Art der Kontoerstellung” die Auswahl auf “guest” gestellt und zum anderen im Template in der index.html auf die {$box_LOGIN} verzichtet.
Das ist natürlich fatal, da man über die login.php nur noch ein Gastkonto anlegen kann und es sonst keine andere möglichkeit mehr gibt die E-Mail-Adresse und das zugehörige Passwort des Administrators einzugeben.
Die Lösung ist dann (Gott-Sei-Dank) doch recht einfach. Zuerst dubliziert man die login.php und benennt dann die Kopie “adminlogin.php”. In Zeile 111 findet man folgende Zeile:
$main_content = $smarty->fetch(CURRENT_TEMPLATE.'/module/login.html');
Diese Zeile ändert man wie folgt:
$main_content = $smarty->fetch(CURRENT_TEMPLATE.'/module/adminlogin.html');
Dadurch bewirkt man, dass beim Aufruf der adminlogin.php eine zuvor erstellte und umbenannte Kopie der TEMPLATE_ORDNER/module/login.html (die Kopie benennt man dann sinnigerweise adminlogin.html) als Template aufgerufen wird.
In dieser adminlogin.html kann man nun einfach die {IF} Abfrage auskommentieren oder das ganze noch etwas “aufhübschen”:
{config_load file="$language/lang_$language.conf" section="login"}
{#heading_login#}
{if $info_message!=''}
{/if}
Admin-Login
{$FORM_ACTION} Hier können Sie sich nun in den Administrationsbereich einloggen
{#text_email#} | {$INPUT_MAIL} | |
{#text_password#} | {$INPUT_PASSWORD} | {$BUTTON_LOGIN} |
{#text_lost_password#} |
{$FORM_END}
So kann man sich dann weiterhin in den Admin-Bereich einloggen ohne eine Login-Box anzeigen lassen zu müssen.
Sehr hilfreich, vielen Dank! 🙂
Auch mir hat dieser Artikel aus dem Admin-Exil befreit 🙂
Vielen Dank für diesen Tipp!