Individuelle 404-Fehlerseite für Joomla! anlegen

Seite nicht gefunden - Fehler 404

Nach einem Relaunch einer Website gibt es immer wieder Seiten, die einen neuen Namen bekommen oder nach dem Relaunch gar nicht mehr existent sind. Diese Seiten sind jedoch zunächst im Google-Index gelistet. Klickt ein Nutzer eine solche veraltete Seite aus den Suchergebnissen an, so erhält er eine Standard-Fehlermeldung - meist eine weiße Seite mit einer Fehlermeldung und ggf. einem Link zur Startseite.

Alternative 404-Seite

Eine Möglichkeit ist, die alten URLs auf die neuen URLs über die Datei .htaccess umzuleiten, um die Fehlerzahl zu reduzieren. Eine zusätzliche, individuelle Fehlerseite in Form eines Beitrags im Kontext des Web-Layouts macht aber trotzdem immer Sinn.

So geht's in Joomla!:

Teil 1:

  1. Neuen Beitrag mit einer passenden Fehlermeldung in Joomla! anlegen und unter einer beliebigen Kategorie ablegen (ich verwende meistens "Uncategorised")
  2. Neues Menü anlegen (Menütitel könnte lauten: verstecktes Menü - versteckt deshalb, weil dem Menü keine Modulposition zugewiesen wird und das Menü selber somit nicht in Erscheinung tritt. Es ist aber notwendig, da jeder Beitrag in Joomla über einen Menüeintrag erreichbar ist.)
  3. Neuen Menüeintrag anlegen. Der Menütitel könnte lauten: 404 - Seite nicht gefunden). Als Menütyp "Einzelner Beitrag" wählen und den gerade angelegten Beitrag auswählen.

Teil 2:

Um nun auch die individuelle Fehlerseite anzuzeigen, bedarf es noch ein wenig PHP.
Zuständig für die Fehlerbehandlung ist die error.php im jeweiligen Template-Verzeichnis. Für unsere Zwecke ersetzen wir die bestehende error.php durch eine eigene. Am besten die vorhandene error.php umbenennen (so kann jederzeit auf diese zurückgegriffen werden). Dann in einem Texteditor, wie z.B. Notepad++ eine neue Datei erzeugen, unter dem Namen error.php abspeichern und folgenden php-Code einfügen und anpassen:

<?
    defined('_JEXEC') or die('Restrictedaccess');

    # Z.B. $cTemplatePathOverride="beez5";
    $cTemplatePathOverride="mein-Template";
    
    # Eigene Fehlerseite definieren
    # Z.B. $cRedirError="/meine-404-fehlerseite.html";
    $cRedirError="/404-fehlerseite.html";
    header("HTTP/1.1 301 Moved Permanently");
    header("Location: ".$cRedirError);
    exit;    
?>

 

Die Zeilen, die mit # beginnen sind Kommentarzeilen.

Setzen Sie Ihren Template-Namen und Ihren Alias ein und laden Sie die neue error.php auf Ihren Server.

Alias anlegen

Nach dem Upload können Sie testen, ob die korrekt Fehlerseite angezeigt wird, indem Sie aus dem Seitennamen der URL eine Buchstaben löschen. Also anstelle von www.meineSeite.de/index.php einfach www.meineSeite.de/inex.php eingeben.

Funktioniert in Joomla 2.5 und 3.x

Quelle:
Basis dieser Anleitung ist der Artikel "Domainumleitungen für Joomla: Redirect veralteter URLs, z.B. bei Relaunch der WebsiteIn" auf blog.formativ.net.

Zum Weiterlesen:
Christian Ebernickel: 404-Fehlerseiten mit Google Analytics und Tag Manager tracken

Kategorie