Je dois forcer un 404 sur certains postes en fonction des conditions. J'ai réussi à le faire (bien que je ne sache pas si je l'ai fait correctement) et je suis en train de 404.phptélécharger mon modèle comme prévu.
Mon code:
function rr_404_my_event() {
global $post;
if ( is_singular( 'event' ) && !rr_event_should_be_available( $post->ID ) ) {
include( get_query_template( '404' ) );
exit; # so that the normal page isn't loaded after the 404 page
}
}
add_action( 'template_redirect', 'rr_404_my_event', 1 );
Code 2 de cette question connexe - même problème:
function rr_404_my_event() {
global $post;
if ( is_singular( 'event' ) && !rr_event_should_be_available( $post->ID ) ) {
global $wp_query;
$wp_query->set_404();
}
}
add_action( 'wp', 'rr_404_my_event' );
Mon problème:
Bien que cela ait l' air bien, j'obtiens un statut 200 OKsi je vérifie l'onglet Réseau. Comme il s'agit d'un statut 200, je crains que les moteurs de recherche ne puissent également indexer ces pages.
Comportement attendu:
Je veux qu'un statut 404 Not Foundsoit envoyé.
200avec ça.