Methode B hat bei mir nicht funktioniert, da ich nicht einen Seitenbaum (Beispiel "leiterseiten") mit allen Seiten habe die nur für Mitglieder sind, sondern die Mitgliederseiten auf die ganze Homepage "verstreut" sind, daher musste ich die Loginbox permanent einbinden. Ausserdem habe ich ein paar Phlogiston-Flüchtigkeits-Bugs ausgebügelt
Hier eine kurze Anleitung in 3 Schritten Schritt 1
Im Install Tool suchen:
Code:
pageNotFound_handling
und folgendes eingeben:
Code:
USER_FUNCTION:fileadmin/template/main/pageNotFoundHandling.php:user_pageNotFound->pageNotFound
Achtung: Pfad und Dateiname anpassen!
Schritt 2
Folgende Datei auf deinen Server legen (der Pfad und Dateiname muss identisch sein mit dem in Schritt 1)
PHP-Code:
<?php
class user_pageNotFound {
function pageNotFound($param,$ref){
//print out the normal page as HTML
//TODO: Maybe its possible to get the content of a 404Page from the Pagetree?
echo '<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de-CH" lang="de-CH">
<head>
<title>';echo 'http://'.getenv("SERVER_NAME").'</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" type="text/css" href="/fileadmin/css/screen/content.css">
<!--
This website is powered by TYPO3 - inspiring people to share!
TYPO3 is a free open source Content Management Framework initially created by Kasper Skaarhoj and licensed under GNU/GPL.
TYPO3 is copyright 1998-2006 of Kasper Skaarhoj. Extensions are copyright of their respective owners.
Information and contribution at http://typo3.com/ and http://typo3.org/
-->
<!--#####SNAP#####-->
<!-- CONTENT ELEMENT, uid:582/text [begin] -->
<a id="c582"></a>
<!-- Header: [begin] -->
<center>
<table width="940px">
<tr><td>
<a href="';echo 'http://'.getenv("SERVER_NAME").'"><img src="';echo 'http://'.getenv("SERVER_NAME").'/fileadmin/img/logo_mit_web_randlos.gif" border="0"></a>
<h1>Fehler auf ';echo 'http://'.getenv("SERVER_NAME").'</h1>
<!-- Header: [end] -->
<!-- Text: [begin] -->
<p>Leider konnte die von Ihnen gesuchte Seite <strong>';
echo 'http://'.getenv("SERVER_NAME").$param['currentUrl'];
echo '</strong> nicht gefunden werden.</p>
<p>Eventuell haben Sie auch versucht eine Seite zu öffnen die nur für Mitglieder ist.<p>
<p>Wenn dies der Fall ist geben Sie bitte untenstehend Ihre Mitgliedsdaten ein und klicken anschliessend auf "Anmelden".
Wenn Sie das nicht zur gewünschten Seite führt, können Sie davon ausgehen, dass es die von Ihnen gesuchte Seite hier nicht gibt.</p>
Zur Homepage <a href="';echo 'http://'.getenv("SERVER_NAME").'">';echo 'http://'.getenv("SERVER_NAME").'</a>
</p>
<!-- Text: [end] -->';
echo ' <!-- CONTENT ELEMENT, uid:582/text [end] -->
<!--
BEGIN: Content of extension "loginbox_macmade", plugin "tx_loginboxmacmade_pi1"
-->
<h3>Mitglieder-Login</h3>
<form action="http://'.getenv("SERVER_NAME").$param['currentUrl'].'" target="_top" method="post" onSubmit="">
<table>
<tbody>
<tr align="left">
<th><label for="user">Benutzername:</label></th>
<td><input type="text" id="user" name="user" value="" /></td>
</tr>
<tr align="left">
<th><label for="pass">Passwort:</label></th>
<td><input type="password" id="pass" name="pass" value="" /></td>
</tr>
<tr>
<th><label for="permalogin">Angemeldet bleiben:</label></th>
<td>
<input name="permalogin" value="0" type="hidden" disabled="disabled" id="permaloginHiddenField">
<input name="permalogin" value="1" type="checkbox" checked="checked" id="permalogin" onclick="document.getElementById(\'permaloginHiddenField\').disabled = this.checked;" />
<input name="redirect_url" type="hidden" value="http://'.getenv("SERVER_NAME").$param['currentUrl'].'" />
</td>
</tr>
</tbody>
<tfoot>
<tr>
<td></td>
<td>
<input type="submit" name="submit" value="Anmelden" />
</td>
</tr>
</tfoot>
</table>
<input type="hidden" name="logintype" value="login" />
<input type="hidden" name="pid" value="262" />
</form>
<p><a href="';echo 'http://'.getenv("SERVER_NAME").'/bffs/mitglieder-login.html?tx_loginboxmacmade_pi1%5Bforgot%5D=1&cHash=342df2ac83">Passwort vergessen?</a></p>
</table>
</center>
<!-- END: Content of extension "loginbox_macmade", plugin "tx_loginboxmacmade_pi1" -->';
//}
//now print out the rest of the page :smile:
echo '
<!--######SNAP#######-->
';
}
}
?>
Schritt 3
Folgendes musst du in der Datei noch anpassen:
- Pfad zur CSS Datei
- Pfad zum Logo
- Pfad zum Passwort vergessen Link
Die Texte können natürlich nach belieben abgeändert werden.
Das sollte alles gewesen sein.
Lieben Gruss
ling und Junior