| Server IP : 178.212.43.201 / Your IP : 10.100.0.33 Web Server : Apache/2.4.37 (Oracle Linux Server) OpenSSL/1.1.1k System : Linux spa0007.srv.paxillus.pl 5.4.17-2136.355.3.1.el8uek.x86_64 #3 SMP Sat May 9 17:11:55 PDT 2026 x86_64 User : apache ( 48) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/html/kontur_dev/wp-content/plugins/redirection/actions/ |
Upload File : |
<?php
/**
* Return an error to the client, and trigger the WordPress error page
*/
class Error_Action extends Red_Action {
/**
* Set WordPress to show the error page
*
* @return void
*/
public function run() {
wp_reset_query();
// Set the query to be a 404
set_query_var( 'is_404', true );
// Return the 404 page
add_filter( 'template_include', [ $this, 'template_include' ] );
// Clear any posts if this is actually a valid URL
add_filter( 'pre_handle_404', [ $this, 'pre_handle_404' ] );
// Ensure the appropriate http code is returned
add_action( 'wp', [ $this, 'wp' ] );
}
/**
* Output selected HTTP code, as well as redirection header
*
* @return void
*/
public function wp() {
status_header( $this->code );
nocache_headers();
global $wp_version;
if ( version_compare( $wp_version, '5.1', '<' ) ) {
header( 'X-Redirect-Agent: redirection' );
} else {
header( 'X-Redirect-By: redirection' );
}
}
public function pre_handle_404() {
global $wp_query;
// Page comments plugin interferes with this
$wp_query->posts = [];
return false;
}
public function template_include() {
return get_404_template();
}
public function name() {
return __( 'Error (404)', 'redirection' );
}
}