Home › Toolset Professional Support › [Resolved] About taxonomies and categories
This is the technical support forum for Toolset - a suite of plugins for developing WordPress sites without writing PHP.
Everyone can read this forum, but only Toolset clients can post in it. Toolset support works 6 days per week, 19 hours per day.
Our next available supporter will start replying to tickets in about 4.10 hours from now. Thank you for your understanding.
This topic contains 6 replies, has 2 voices.
Last updated by jacquesS-4 2 months ago.
Assisted by: Christopher Amirian.
This query relates to posts, page, products, types and terms and their taxonomies, and how these taxonomies relate to one another.
This question perhaps does not relate to Toolset only. I ask it here because your documentation is really some of the best in the WordPress world (and so is your support). We're new to WordPress, and unfortunately by far the majority of How to... blogs/videos are not high quality, and in too many cases just plain wrong (that we usually discover after going down the wrong path for a while).
The use of the term "post" was quite confusing to me - until one of your Toolset guys explained the 3 different meanings in the WordPress world somewhere in your documentation/video (I think it was Joe).
So in my mind there is a bit of confusion of where to start when it comes to the practice of applying taxonomies in the WordPress environment. I've worked on medical, tourism and other large taxonomies, so I really understand what taxonomies are, but I am a bit vague how to apply custom taxonomies when commencing development as different "components" (posts, page, products, types, terms (PPPTT) of WordPress seem to have independent taxonomies. How do these independent taxonomies relate to one another in WordPress?
In the normal world, a taxonomy is a classification system based on similarities and differences into categories (other terms are also used, including class, which has a special meaning in programming). Anything can be classified in a group (technically a category) with anything else - depending on what attributes are identified.
In WordPress there are several contexts in which custom taxonomies can be used: posts, pages, products, types (all inputting into different tables), and then in Toolset Dashboard there is also yet another place to add a Taxonomy as well as Terms (such as "house" and "office" as a set within the taxonomy "property type" - thus Term is also a taxonomy by itself). And Fields can also be classified - Custom Fields Group. All these taxonomies seem to function only in their own context.
So for someone like me, where do we start?
Let's take an example for a site requiring a very small taxonomy (we deal with 800+ in the present project, in other projects 1000s) with, say, 20 items, each with its unique name.
* Is it possible to design a taxonomy with Toolset, and instead of replicating the 20 taxonomy items for posts, page, products, types, terms (PPPTT) and even fields, use some ID to call it in those contexts?
Thus: can a Parent Taxonomy be created that feeds into all these different sections?
* If not possible, do we need to create a separate taxonomy for each of the PPPTT sections? - that seems to be a lot of unnecessary duplication.
Note: for our application we need static pages, posts and "product" sections that refer to the same "things". And the same types will also apply across board.
Given your really excellent How to... documents and videos, could someone at Toolset not perhaps do an explanation - or even video to add to your document repository?
PS:
Perhaps Toolset can create a functionaliy to design a single central taxonomy to which posts/pages/products/types/terms/fields can refer. Thus: design a taxonomy once (a parent taxonomy), and apply it anywhere and everywhere.
Hi,
I understand that WordPress taxonomy can be confusing at first, especially with how it applies to posts, pages, products, and other custom types. Let me break it down for you:
Shared Taxonomies: You can indeed create a single taxonomy in Toolset and apply it across multiple post types, such as posts, pages, products, and more. Toolset allows you to assign a taxonomy (e.g., “Property Type”) to multiple post types when you create it. This will allow all those content types to share the same classification system.
But it is your decision as the designer of your system to decide if you need a shared taxonomy to individual ones per context.
Please consider Toolset is a tool that helps you out create custom taxonomies, but it is not a tool to design the overall layout of your application. That is something you need to do on the paper.
Terms and Taxonomies: Terms (like “Office” under a taxonomy like “Property Type”) are the actual categories used to classify content. Once the taxonomy is applied to multiple post types, the same terms can be used across all post types.
Custom Fields and Taxonomies: While taxonomies primarily classify content (posts, pages, products), Toolset’s custom fields classify data within those content types, which is slightly different from taxonomies. However, Toolset allows a robust system to manage all these relationships efficiently.
I suggest that you watch the classified website course, that walks you through from beginning to the end to create a classified website:
https://toolset.com/course/wordpress-directory-and-classifieds-sites/
You will learn most of the concepts along the way and it will give you a better understanding on what Toolset can do for you.
Thanks.
Hi
[this is quite long - but I guess my query is quite complex]
It seems we're talking past one another - perhaps because I did not express myself adequately. This is also perhaps due to the peculiar technical meanings WordPress uses for some terms; while I interpret them in a proper theoretical sense (I taught and design courses on this).
Our challenge is this:
A heavy hammer approach will be to design a taxonomy and having to repeat it for posts, pages, products, types, and terms.
A more elegant design is to design once, and apply all over the site. You say that is possible with Toolset, but Toolset does not allow for two important functions we require:
* Toolset's taxonomy function cannot do a taxonomy hierarchy. Yet the standard technical definition of a taxonomy is something hierarchical.
* Toolset does not allow for adding icon/images to the categories. Our target users include many (perhaps majority) users with low level reading skills, so we need images to enhance usability. It seems that among he many available WordPress tools, only the Product Categories of Woocommerce allows for images.
So to avoid the heavy hammer method, how to apply a taxonomy in practice in the WordPress environment is the challenge.
Theory
In theoretical terms a taxon is the collection of things that we classify as similar - technically that's the domain of an information ontology. A taxon is just a label for a group of entities. The technical label for the domain of an information ontology class is "category". In this sense "taxonomy" and "category" are synonyms.
These ontologies are always hierarchical as we refine any taxon with finer attributes (the WordPress "flat taxonomy" is an unfortunate misnomer - they should have used a different term as in ontologies the position of any idea is always hierarchical (the only exception is the single supernode of any taxonomy hierarchy the very first/primary class). That's all there is to a taxonomy. Basically it is just a collection of nomens (labels / nomenclature) in a hierarchically organized system.
Theoretically, all a software application requires is a single hierarchical ontological taxonomy function that can be applied to any context (all posts, pages, products, types, and terms. The IDs of each taxon name could be used in any context. The structure would be:
Taxon name level 1
Taxon name level 2
Taxon name level 3
Taxon name level 4 ...
WordPress and taxonomies
How does the WordPress taxonomy system map onto (apply to) that taxonomical structure above? How do the terms (the nomen) posts, pages, products, types, and term apply to an ontology? How does WordPress handle the divisions between taxonomies/categories?
The documentation does not present exclusive definitions for each of these terms - but examples. Each of these: posts, pages, products, types, and terms can theoretically be hierarchically arranged in a taxonomy - which means theoretically they are inter-changeable.
This is how I understand WordPress in this environment:
There are two types of delivering content: pages for static information, posts for dynamic information. Pages and posts serve as "containers" for types of information, which can be any kind of information and even be the same kind of information. A taxonomy classifies content, not the container. So why is it so convoluted to apply taxonomies to pages and posts?
I assume the reason why WordPress distinguishes between types of containers is more about the surface/front-end design management, and not really for the ontological organisation of the site content.
If WordPress uses the term "category" for the Taxon levels, why do we need types and terms as well? And why does Products have its own category system (I guess that is due to Woocommerce). If that is how WordPress works, we need a clearer explanation of how the taxonomy system applies within its framework.
Types are just a group of taxons, why does WordPress need the term Type? Again I assume that is to make front-end design easier as on the backend the distinction should really be nothing but association with a particular ID.
Taxon labels are written to a DB field - so fields are really taxon names. This means that a Custom Field is just another category name in a taxonomy. But unfortunately WP cannot do ordering of categories, so Fields must do this job.
Why are Fields necessary if any category name (which is a field) can be used in a program script? Thus, why can Fields not be automatically populated baaed on category design?
In conclusion, it seems to me that Toolset/Wordpress use a variety of terms for the same things to make it easier for the platform's user to design.
For the WordPress platform, what is the best design approach? Which kinds of taxonomies should serve as primary; which should be used just because of the peculiar way WordPress deals with taxonomies?
Your material at https://toolset.com/course-chapter/introduction-custom-types-for-directory-sites/ states that "it makes no sense ordering them [i.e. posts] by their taxonomy for type (i.e. houses, apartments, offices). But in some applications it might be necessary to do so. For example to allow a user to order the list of categories as follows for browser display purposes: houses, apartments, offices. WordPress forces one to use Fields for this, which adds a layer of complexity to design.
Your great examples in documents - such as Recipe and Gym - are well explained on their own. But once trying to fit them into a more complex site, we get lost.
So my question is: what exactly are the different functions of posts, pages, products, types, and term; how do they exclude one another?
When designing a site, what is the best way to avoid unnecessary duplication of taxonomies? If there is no easy method, it seems that the same taxonomy needs to be added to each of posts, pages, products, types, and term.
The tutorial material you suggested we saw quite some time ago, but it does not clarify the design approach.
Regards
Hi,
I am answering the question while reading each part of your answer as the reply was so long.
1) Toolset allows you to create one taxonomy and assign it to multiple custom post types.
- Go to WordPress Dashboard > Toolset > Taxonomies > Add New.
- Upon adding the details there you will see a box called "Post Types to be used with this Taxonomy".
- That is the box that lists all custom post types and you can select which custom post type you want the taxonomy to be available on.
2) Toolset allows hierarchal taxonomies.
Use the same method above to create or edit a taxonomy and under the "Taxonomy type" box you can select if you want the taxonomy to be hierarchal or flat.
3) Toolset allows the addition of fields to a taxonomy such as icons or images.
- Go to WordPress Dashboard > Toolset > Custom Fields.
- At the top select the "Term Fields" tab.
- Click the Add New Group button.
- Add custom fields that you want to assign to a taxonomy.
- Click the Edit button at the top to show a pop-up where you can select the taxonomy you want the created fields to be available. (check the attached screenshot)
Ok now the theory section goes way above my head and I did not understand what you mean as it was too abstract for a detailed oriented mind of mine.
All categorizing related stuff in WordPress is called taxonomies and there are two types:
Hierarchical: Such a post category
Flat: Such as a post tag
please consider that Toolset is a WordPress platform plugin. That is why it works with whatever WordPress is designed and has.
The other parts of your message were kind of complaining about how things are done in WordPress. I can not do anything about that or have any solution for the differences between your interpretation (even if yours is correct) and what WordPress has.
Hope I could give as much info as I could.
Here is a resource that we have comparing the taxonomies and custom fields:
https://toolset.com/course-lesson/using-custom-fields-vs-taxonomy/
Thanks.
Hi Christopher
Forgive me going on a tangent in the previous post.
We've done all those things you suggest before.
So here some more q's:
2 - hierarchal taxonomies
Other taxonomy builders explicitly state the relationship between parent and child. E.g. when creating a taxonomy one can state who is the parent (if it has one).
In the "Taxonomy type" hide-reveal box there is only a radio choice.
If you mean that the next box "Post Types to be used with this Taxonomy" contains the list of possible children, it is a bit vague as it does not state explicit that that box is used for parent-post relations.
3 - Images to posts
We want to add an image to a post type, which does not seem to be possible.
Ciao
Hi,
2- It seems that you are confused between the Taxonomy creation process and now adding terms to those Taxonomies.
The steps I mentioned in Toolset will create a custom Taxonomy for a specific post type.
Then on the WordPress Dashboard menu, you will see the name of the post type and a sub-menu of the taxonomy.
If you go there, now you can add terms for that taxonomy, or if you want you can go to each post type entry, and on the sidebar, you will see the option to add a term and select which term should be the parent of that term.
That works exactly like the default category option for the posts in WordPress.
Honestly, the way your questions are makes me believe that there is a lack of knowledge on your part when it comes to WordPress itself which is a critical component to be able to use Toolset, as Toolset is a plugin that makes development in WordPress easier and expands the functionality.
I suggest that you take a course on how the taxonomies and custom posts work on WordPress and it will click what Toolset does, as it works like WordPress is meant to work.
If I am wrong about that, I apologize and I will do my best to answer tour questions regarding Toolset.
3- I am not sure how you want to add an image to a post type.
If you are talking about adding an image to the normal content of a post type, it is done via the WordPress block editor. But if you want to have fields attached to a custom post type to be able to add images on the custom posts you can simply create a custom field from WordPress Dashboard > Toolset > Custom Fields for that post type and then on each post entry on WordPress Dashboard you will see a field that allows you to add an image.
Now I am not sure if you know, but after that, you need to create a view for that post type to tell Toolsert where to show that image in the single post type entries int he front end of the website.
That is explained in the course I already shared with you here:
https://toolset.com/course/wordpress-directory-and-classifieds-sites/
It is the contents of Chapter 4 that talks about what I am talking.
Thanks.
Hi Christopher
About 2: Indeed. The process creating a taxonomy is really basic. No offense is taken on "lack of knowledge on your part when it comes to WordPress". Its not so much a lack of knowledge - I've created a few 1000 (really!) product categories in WordPress for different purposes. But the process when the same taxonomy / classification system is used for other types of front-end delivery requires unnecessary duplication. I thought Toolset could speed up the process. Perhaps I expect too much from how taxonomy is implemented in WordPress.
About 3: You say about image to a post type
"... create a custom field ... on each post entry"
Yes, but I was looking for a short cut to avoid doing so for each.
I really appreciate your patience and thoughtful replies.
Best regards
We can close this one.
Thanks!