Siempre que tenga una página 404 definida en su tema, Wordpress mostrará una página 404 si "etiqueta" está definida en $ wp_query-> query_vars, y no hay publicaciones que coincidan con esa etiqueta.
Estoy escribiendo un complemento que muestra información en cada página, además de las publicaciones. Me gustaría alterar la lógica 404 para que la página 404 se muestre si no hay publicaciones que coincidan con una etiqueta y el complemento no pueda extraer ningún dato que coincida con esa etiqueta. Si el complemento puede encontrar datos, me gustaría mostrar una página normal, independientemente de si hay publicaciones en esa página o no ...
He estado buscando en Google, leyendo código, leyendo el códice y hurgando por aquí, y no he podido averiguar dónde Wordpress activa ese 404 y cómo puedo anularlo. (Tengo la sensación de que podría tener algo que ver con status_header () en functions.php, pero no está claro cómo y cuándo necesito conectarme a él).
Cualquier ayuda / ideas / iluminación apreciada.
Gracias,
~ Parche
// configuration
require('./wp-load.php');
// init WP (inits objects, language and stuff).
wp();
// fix title (this is not 404)
$wp_query->is_404 = false; // doesn't fix the actual 404 status
status_header( 200 ); // but this does :-)
Cree un
404.php
archivo de plantilla en su tema y personalícelo según sea necesario (agregando la salida de su complemento o lo que sea). Mencionas definido en tu tema , ¿qué es exactamente lo que está mal con este enfoque para ti?Codex Creando una Página de Error 404
fuente