Wenn ich den folgenden einfachen Code verwende:
function my_custom_rewrite_rules() {
add_rewrite_rule(
'^rewriteme$',
'index.php?page_id=1',
'top'
);
}
add_action('init', 'my_custom_rewrite_rules');
Ich würde erwarten, dass ich http://example.com/rewriteme
besuchen und den Inhalt des Beitrags von Hello World sehen kann, während /rewriteme
in der Adressleiste bleibt. Das geht aber nicht. Tatsächlich leitetzu http://example.com/hello-world/
weiter.
Wie kann ich den Inhalt des Hello World-Posts anzeigen, ohne die URL in der Adressleiste zu ändern?
(Und ja, ich habe die Umschreiberegeln gelöscht.)
Wenn Sie nur sehen den Inhalt des /hello-world
Beitrags auf der /rewriteme
Seite wollen, können Sie versuchen, so etwas auf der page.php Ihres Themas hinzuzufügen:
<?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();
}
?>