Si j'utilise le code simple ci-dessous:
function my_custom_rewrite_rules() {
add_rewrite_rule(
'^rewriteme$',
'index.php?page_id=1',
'top'
);
}
add_action('init', 'my_custom_rewrite_rules');
Je m'attendrais à pouvoir visiter http://example.com/rewriteme
et voir le contenu du message Hello World tout en conservant /rewriteme
dans la barre d'adresse. Cela ne fonctionne pas, cependant. C'est en fait redirige vers http://example.com/hello-world/
.
Comment l'obtenir pour qu'il affiche le contenu de la publication Hello World sans modifier réellement l'URL dans la barre d'adresse?
(Et oui, j'ai rincé les règles de réécriture.)
Si vous voulez juste voir le contenu de la publication /hello-world
sur la page /rewriteme
, vous pouvez essayer d'ajouter quelque chose comme ceci sur le page.php de votre thème:
<?php
if (is_page('rewriteme')) {
// query for the about page
$your_query = new WP_Query( 'postname=hello-world' );
// "loop" through query (even though it's just one page)
while ( $your_query->have_posts() ) : $your_query->the_post();
the_content();
endwhile;
// reset post data (important!)
wp_reset_postdata();
}
?>