Benutzer-Werkzeuge

Webseiten-Werkzeuge


typo3:404

404 handling

Mehrsprachige 404-Seite

Das folgende Beispiel ist zweisprachig mit Deutsch als Grundsprache und Englisch als (erster) Fremdsprache.

Im Seitenbaum wird auf der ersten Ebene eine Seite mit dem Namen 404 angelegt und mit identischem Namen ins Englische übersetzt („Alternative Seitensprache“).

Im Order typo3conf wird eine neue Datei AdditionalConfiguration.php angelegt und mit dem folgenden PHP-Code gefüllt.

AdditionalConfiguration.php

<?php
 
if (!defined('TYPO3_MODE')) {die('Access denied.');}
 
// Multilanguage 404 page with RealURL:
if (preg_match('/\/en\//', $_SERVER['REQUEST_URI']) || $_GET['L'] == 1) {
  $GLOBALS['TYPO3_CONF_VARS']['FE']['pageNotFound_handling'] = '/en/404/';
} else {
  $GLOBALS['TYPO3_CONF_VARS']['FE']['pageNotFound_handling'] = '/404/';
}

… oder ggf. $GLOBALS['TYPO3_CONF_VARS']['FE']['pageNotFound_handling'] = '/de/404/';, wenn die deutsche (Default-)Seite grundsätzlich mit Länderkürzel aufgerufen wird.

Falls kein RealURL installiert ist, kann man selbstverständlich auch die Seiten-ID verwenden:

AdditionalConfiguration.php

<?php
 
if (!defined('TYPO3_MODE')) {die('Access denied.');}
 
// Multilanguage 404 page with RealURL:
if (preg_match('/\/en\//', $_SERVER['REQUEST_URI']) || $_GET['L'] == 1) {
  $GLOBALS['TYPO3_CONF_VARS']['FE']['pageNotFound_handling'] = '/index.php?id=17&L=1';
} else {
  $GLOBALS['TYPO3_CONF_VARS']['FE']['pageNotFound_handling'] = '/index.php?id=17&L=0';
}

Quelle: http://blog.exites.de/blog/2011/12/404-fehlerseite-bei-mehrsprachiger-typo3-seite-und-realurl/

typo3/404.txt · Zuletzt geändert: 2016/05/29 15:19 von admin