Abfragen in WordPress übergeben und abrufen
-
16-10-2019 - |
Frage
Ich habe zwei Autorenseiten, einer zeigt ungefähr 5 Beiträge an. Dann versuche ich, eine andere Seite einzurichten, die alle ihre Beiträge sein wird. Ich habe eine Vorlage namens MoreAuthorPosts.php erstellt und versuche, die Autorenvariable an diese Seite zu übergeben. Das Problem ist, wenn ich domain.com/more-author-posts? Wie kann ich diesen Wert abrufen? Ist das in WordPress überhaupt möglich? Ich weiß, dass WP Rewrite meine URL -Struktur irgendwie nicht sicher bin.
Ich habe es versucht:
get_query_var('author')
Und versuchte dies zu lesen, hatte aber kein Glück:
http://codex.wordpress.org/query_overview
Anregungen?
Vielen Dank.
Lösung
Ich bin mir fast sicher, dass das author
ist eingebaut, also verwenden Sie so etwas wie author_more
. Sie müssen diesen Var hinzufügen query_vars
Erste. Beispiel:
// add `author_more` to query vars
add_filter( 'init', 'add_author_more_query_var' );
function add_author_more_query_var()
{
global $wp;
$wp->add_query_var( 'author_more' );
}
Dann auf deinem more-author-posts.php
Vorlage nennen Sie es so:
if ( get_query_var( 'author_more' ) )
{
// do your stuff
}
Aktualisieren
Dies funktioniert in der folgenden URL -Beispiel/Anwendungsfall:
http://example.com/index.php?author_more=value
Wenn Sie dies jedoch als ausgefallene URL verwenden möchten, müssen Sie eine Umschreiben -Regel hinzufügen:
add_action('init','add_author_more_rewrite_rule');
function add_author_more_rewrite_rule()
{
add_rewrite_rule(
'more-author-posts/(\d*)$',
'index.php?author_more=$matches[1]',
'top'
);
}
Jetzt können Sie es so verwenden
http://example.com/more-author-posts/value