Ich benutze einige URL-Umschreibung, zusätzlich zum URL-Umschreiben, das Wordpress nativ ausführt.URL wie in der Adressleiste angezeigt
Die Grundidee ist, dass ich eine Kategorieseite mit einer Adresse verwenden, wie es woanders erscheint gehört, so/Blog/Art/Kinder ist die wahre Kategorie in WP. Ich umschreiben dies mit einer .htaccess-Datei in/Kindern/zu der Kategorie, wie es ist eigentlich eine Seite mit dem Namen/Kinder/Programme mit diesem Code in den Kinder-Ordnern aussehen:
RewriteEngine on
RewriteRule ^programs$ /blog/type/kids/ [P]
Dies geschieht in zwei verschiedenen Standorten in dem Seite, aber die beiden laden die gleiche WP-Seite hinter den Kulissen. Das alles funktioniert gut.
Was ich jetzt tun muss, ist eine Variable basierend auf dem Ort, aus dem es geladen wird, um sicherzustellen, dass die Navigation den richtigen Abschnitt der Website markiert, und zeigt die richtige Subnav. Das Problem ist, dass ich nicht auf die neue, umgeschriebene URL zugreifen kann, die der Benutzer sieht.
Idealerweise ich bin auf der Suche nach so etwas wie folgt aus:
if(strpos($_SERVER['PHP_SELF'],'kids//programs')) {
$top_nav_item_id = 'kids';
} else {
$top_nav_item_id = 'programs';
$subnav_item_id = 'kids';
}
PHP_SELF beschließt, /blog/index.php und REQUEST_URI zeigt/Blog/Art/Kinder. So zeigen mir auch nicht den/kids/programs Ort, der wirklich angezeigt wird.
Irgendwelche Ideen, wie man das bekommt? Vielleicht hat WP einen eingebauten Tag dafür?
Prost!
Bitte den letzten Teil der Frage erneut zu lesen. REQUEST_URI löst nicht auf die richtige URL auf. –