My website needs to have two custom post types and each of these has two custom taxonomies with several terms each. These terms also have to be hierarchical.
My problem is, that I don't know how to set up a page, that displays all the first level taxonomy-terms of a given CPT. This page should work like a menu. If the user clicks on a term that also has child terms, a new page should be loaded, which displays them.
After having selected the term, an archive page should be loaded which display all the articles that are tagged with the selected taxononomy-term.
Furthermore the URL should include the term-slug if that's possible...
If being on the "Proof for cations"-page, the url should be:
Is this possible with a plugin? Or do I have to program it myself? If so, would you be so kind to help me a little bit on how to set this up? Thank you very much! :)
These are wireframes of the pages, so you better understand what I'm trying to do.
From here, the user can click on Theory or -as in this example- on Practical Courses in the menu bar. He should then see a page that displays all the 1st level taxonomy terms of the selected posttype. URL: example.com/practical-courses/
Each term should also have a thumbnail, so that they better represent what they are.
The user will now choose to which practical course he wants to see more information. After selecting one, he should get a page, which displays all the child terms of the selected term: URL: example.com/practical-courses/qualitative-analysis/
The user can now chose one of the displayed sub-terms and is then redirected to an archive page, which displays all the posts of the selected post type which have both terms added to them. So in our case he will see a listing with all the proof reactions for anions. URL: example.com/practical-courses/qualitative-analysis/proof-for-anions/
Please note, that there is not always a second level of therms, so Step 3 mab be pointless in some cases and therefore should only be displayed, if the selected term has child terms. If it hasn't, the archive page should be displayed.