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.php
té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 OK
si 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 Found
soit envoyé.
200
avec ça.