Benutzerdefinierte Post-Typen, benutzerdefinierte Taxonomien und Permalinks?

Nehmen wir an, ich registriere eine benutzerdefinierte Taxonomie namens:

Clients 

Mit ein paar Begriffen wie: Microsoft, IBM, Apple

Unter einem CPT (benutzerdefinierten Post-Typ) namens projects :

Permalinks

/%year%/%monthnum%/%taxonomy%/%postname%/ dies ist die Struktur, die ich verwende;

http://www.example.com/projects/ – Zeigt alle Beiträge unter ‘Projekte’ an

http://www.example.com/projects/clients/ Zeigt eine 404 an

http://www.example.com/projects/clients/ibm/ zeigt alle Posts unter projects mit dem Begriff ibm

Wie kann ich WordPress dazu bringen, einen Index aller Beiträge unter Clients anzuzeigen? Wenn also beispielsweise der Benutzer / projects / clients / alle Beiträge mit Microsoft, Apple und IBM besucht hat, würde dies angezeigt.

Ich weiß, eine Methode ist, eine Seite zu verwenden und dann in die Seite abzufragen, aber im Wesentlichen von SEO, und Relevanz, kann ich die Seite-Slug nicht etwas anderes nennen.

Danke im Voraus.

Solutions Collecting From Web of "Benutzerdefinierte Post-Typen, benutzerdefinierte Taxonomien und Permalinks?"

Sie müssen eine benutzerdefinierte Regel schreiben. Ich habe ähnliche Sachen für ein neues Projekt gemacht. Erstellen Sie eine Vorlage und weisen Sie sie einer Seite zu, mit Slug als ‘clients’ (oder etwas, das Sie mögen, aber ändern Sie den Slug auch in der folgenden Regel). Probieren Sie den folgenden Code, verwenden Sie functions.php :

 add_action('init', 'custom_rule'); function custom_rule() { global $wp, $wp_rewrite; $wp_rewrite->add_rule('^projects/clients/', 'index.php?pagename=clients', 'top'); } 

Erstellen Sie dann in dieser Vorlage eine benutzerdefinierte Abfrage mit Ihren gewünschten Parametern (Mandanten-Taxonomie) und durchlaufen Sie sie.

Hinweis: Nachdem Sie den obigen Code in Ihre functions.php-Datei eingefügt haben, gehen Sie zu Einstellungen> Permalinks und klicken Sie auf Speichern.

Hoffe, das hilft (ich empfehle Ihnen, es zuerst lokal auszuprobieren)!

Sie können nicht auf den clients zugreifen, da es sich nicht um einen Begriff handelt, sondern um Ihre Taxonomiebasis.

http://www.example.com/projects/clients/ ist Taxonomie-Basis. Es ist wie auf http://www.example.com/tags/ zuzugreifen, was nicht funktioniert.

http://www.example.com/projects/clients/ibm/ ist die Taxonomie-URL. Es ist wie auf http://www.example.com/tags/example zuzugreifen, was funktioniert.

Wenn Sie auf /clients/ URL zugreifen möchten, sollten Sie eine Seite mit einer benutzerdefinierten Vorlage erstellen, die den Inhalt aller Posts unter /clients/ taxonomy anzeigen kann.