Desde que você tenha uma página 404 definida em seu tema, o Wordpress exibirá uma página 404 se "tag" for definida em $ wp_query-> query_vars, e não houver postagens correspondentes a essa tag.
Estou escrevendo um plugin que exibe algumas informações em cada página, além de postagens. Gostaria de alterar a lógica 404, para que a página 404 seja exibida se não houver postagens correspondentes a uma tag e o plug-in não puder acessar nenhum dado correspondente a essa tag. Se o plug-in puder encontrar dados, eu gostaria de mostrar uma página normal, independentemente de haver postagens ou não nessa página ...
Venho pesquisando no Google, lendo código, lendo o códice e bisbilhotando por aqui, e não consegui descobrir onde o Wordpress aciona esse 404 e como posso substituí-lo. (Eu tenho a sensação de que isso pode ter algo a ver com status_header () no functions.php, mas não está claro como e quando eu preciso me conectar a ele).
Qualquer ajuda / idéias / iluminação apreciada.
Obrigado,
~ Patch
// 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 :-)
Crie um
404.php
arquivo de modelo no seu tema e personalize conforme necessário (adicionando a saída do plug-in ou o que for). Você mencionou definido em seu tema , o que exatamente está errado com essa abordagem para você?Codex Criando uma Página de Erro 404
fonte