it-swarm.com.de

Wo findet die 404-Umleitung statt?

Kann mir bitte jemand sagen, wo die 404-Umleitung stattfindet?

Ich möchte zu einer benutzerdefinierten template.php anstelle der 404-Seite umleiten.

Ist das möglich zu tun? Wenn ja, kann mir jemand eine Lösung anbieten.

Vielen Dank, Ravi

1

Aufgrund Ihrer Kommentare verstehe ich, was Sie sagen. Sie möchten jedoch nicht auf einen 404 umleiten , da hierdurch das Objekt des Headers 'Not Found' besiegt wird.

Sie können jedoch den Pfad der 404-Vorlage filtern und Ihren eigenen Pfad zurückgeben.

function __custom_404( $standard_404 )
{
    if ( something_is_true() )
        return '/absolute/path/to/custom.php';
    return $standard_404;
}
add_filter( '404_template', '__custom_404' );
2
TheDeadMedic

Wenn Sie TheDeadMedic verlassen, können Sie Folgendes versuchen:

Nicht 100%, dass das funktioniert

function wpse_20157_404( $standard_404 ) {  
    if ( is_single() || is_tag('whatever','product' && is_404()) ) // Use || to list multiple if's
        include_wordpress_template(TEMPLATEPATH . '/custom404.php');
}
add_action( 'template_redirect', 'wpse_20157_404' );

Oder meine ursprüngliche Antwort

function wpse_20157_404( $standard_404 ) {  
    if ( is_single() || is_tag('whatever','product') ) // Use || to list multiple if's
        include_wordpress_template(TEMPLATEPATH . '/custom404.php');
}
add_filter( '404_template', 'wpse_20157_404' );
1
xLRDxREVENGEx

am oberen Rand Ihrer 404.php hinzufügen:

if ($_SERVER['HTTP_REFERER'] == "Whatever"){
    include('another.php');
    break;
}
0
Bainternet

Da 404s auf dem Server stattfinden, können Sie 404s am besten von WordPress '404.php weg umleiten, indem Sie dies zur .htaccess-Datei in Ihrem Site-Stammverzeichnis hinzufügen.

  ErrorDocument 404 /relative/path/to/404page

Dies muss ein relativer Pfad sein, kein absoluter Pfad.

0
Elpie