Ich versuche, mit add_rewrite_endpoint()
einen neuen Endpunkt zu erstellen. Hier ist mein Code:
// Add query var.
add_filter( 'query_vars', function( $vars ) {
$vars[] = 'my-endpoint';
return $vars;
} );
// Add endpoint.
add_action( 'init', function() {
add_rewrite_endpoint( 'my-endpoint', EP_AUTHORS );
} );
Ich kann jetzt example.com/author/my-endpoint besuchen, was großartig ist, aber "Unter" -Endpunkte scheinen auch zu funktionieren. Zum Beispiel:
Wie kann ich meinen Endpunkt erstellen, ohne auch diese "Unter" -Endpunkte zu erstellen?
Die Umschreiberegel hinzugefügt von:
add_rewrite_endpoint( 'my-endpoint', EP_AUTHORS );
ist
author/([^/]+)/my-endpoint(/(.*))?/?$
=>
index.php?author_name=$matches[1]&my-endpoint=$matches[3]
so nimmt es irgendetwas an, nachdem z.B. /author/henrywright/my-endpoint/...
.
Sie können stattdessen versuchen, es durch add_rewrite_rule()
zu ersetzen, z.
add_rewrite_rule(
'^author/([^/]+)/my-endpoint/?$',
'index.php?author_name=$matches[1]&my-endpoint=1',
'top'
);