Taxonomieën (WordPress): verschil tussen versies
Regel 1: | Regel 1: | ||
− | [[file:20190415-2246.png|thumb|1000px|Onder ''Products'' vind je maar liefst drie | + | [[file:20190415-2246.png|thumb|1000px|Onder ''Products'' vind je maar liefst drie taxonomische systemen: '''Categories''', '''Tags''' en '''Attributes (kenmerken)''']] |
WordPress biedt verschillende manieren om gegevens zoals ''posts'' en ''producten'' te ontsluiten via taxonomieën. Dit artikel biedt een overzicht over deze systemen en focust daarnaast op ''automatisering'' rondom taxonomieën. | WordPress biedt verschillende manieren om gegevens zoals ''posts'' en ''producten'' te ontsluiten via taxonomieën. Dit artikel biedt een overzicht over deze systemen en focust daarnaast op ''automatisering'' rondom taxonomieën. |
Versie van 18 dec 2019 11:44
WordPress biedt verschillende manieren om gegevens zoals posts en producten te ontsluiten via taxonomieën. Dit artikel biedt een overzicht over deze systemen en focust daarnaast op automatisering rondom taxonomieën.
Taxonomische systemen van WordPress
Categorieën
Het meest algemene taxonomische systeem van WordPress, heet Categorieën. Deze functionaliteit wordt op diverse plekken binnen een WordPress-site toegepast. Soms op een manier die zichtbaar is voor gebruikers, en soms op manieren die niet zichtbaar zijn. Al deze Categorie-instanties, zijn gescheiden van elkaar. Je hebt dus bv. een Categorie-taxonomie voor posts en een aparte Categorie-taxonomie voor producten.
Voorbeeld van de Categorie-taxonomieën van een site-in-aanbouw. category
is hierbij de Categorie-taxonomie voor posts:
SELECT distinct taxonomy FROM rt_tmp.wp_term_taxonomy; category language nav_menu post_translations product_cat product_tag product_type product_visibility term_language term_translations
WooCommerce product_cat-Categorieën
Product_cat is een instantie van de Categorie-taxonomie, bedoeld voor de indeling/ontsluiting van WooCommerce-producten
WooCommerce Attributes - Predefined attributes
WooCommerce kent naast Categorieën (product_cat), een taxonomisch systeem dat Attributes oftewel Kenmerken heet. Onder water is dit gewoon een Categorie-taxonomie, met wat toeters, bellen, maar ook met enkele beperkingen.
Als je het taxonomisch systeem van WooCommerce vergelijkt met de bewegwijzering in een groot warenhuis, dan zouden attributen overeenkomen met intrinsieke productkenmerken, zoals de maat en de kleur van kleding. In de praktijk blijkt in indeling tussen externe en interne kenmerken niet zo practisch te zijn, maar in theorie ziet het er schitterend uit.
WooCommerce-attributen komen in twee smaken:
- Predefined attributes
- Custom attributes.
De predefined attributes lijken sterk op Categorieën. Het voorbeeld van de site van hierboven:
SELECT distinct taxonomy FROM kbo3.wp_term_taxonomy; category nav_menu pa_dimensie-1 product_cat product_type product_visibility
Hierbij is pa_dimensie-1
een attribute. Hier kun je zien dat dat een bijzonder geval is van een Categorie-taxonomie. Verder heeft dit attribute de naam Dimensie-1. Blijkbaar voegt WooCommerce daar de prefix pa_
(product attribute?) aan toe.
Zie Attribuut-taxonomieën (WooCommerce) voor details.
WooCommerce Attributes - Custom attributes
De WooCommerce Custom Attributes zijn kenmerken die je ad-hoc, dus per product kunt defineren. Waarom je dit zou doen? Waarschijnlijk omdat het gewoon prettig werken is, dat je on the fly je datamodel kunt vaststellen, ipv. vantevoren. En omdat er altijd wel gekke producten bij zitten, die niet in het systeem passen.
Tot op heden (zomer 2019), heb ik nog geen gebruik gemaakt van maatwerk-attributen.
WooCommerce Tags
Als laatste kent WooCommerce een systeem voor tags. Bv. om een folkstonomy te bouwen. Nog niet mee gewerkt.
WooCommerce Custom fields
Het hoort niet thuis in dit rijtje, maar toch behandel ik het hier, omdat ik anders in de war raak: custom fields (maatwerk-velden) zijn heel handig, maar hebben niets met taxonomieën te maken. Ze dienen een heel ander doel: Informatie omtrent een product op een gestructureerde manier aanbieden. Toevallig kan diezelfde informatie soms ook geschikt zijn voor een taxonomie, maar dan nog moet je de informatie twee keer incorporeren in de site: Eén keer als custom field, en één keer via een taxonomisch systeem (product_cat of attributes, lijkt me).
Maatwerk-velden kun je ook elders binnen WordPress tegenkomen, maar op dit moment speelt dit voor mij enkel rondom WooCommerce-producten.
Attributes vs. categorieën vs. tags
Inhoudelijke verschillen
Categorieën | Attributen | |
---|---|---|
'Taxon-pagina' | Voor elke taxon heb je een 'echte' pagina, waar je bv. de bijbehorende elementen kunt weergeven. Dat zijn de zogenaamde Categorie-pagina's. Dit is cruciaal voor SEO | Je hebt geen pagina's voor taxons. De taxon wordt gecodeerd in de URL. Dat is killing voor SEO - Waar relevant (het is niet altijd relevant!) |
Hiërarchie | Geen probleem | Kunnen nooit hiërarchisch zijn. Je kunt meerdere hoofdtaxons defineren (bv. lengte, breedte & hoogte) en per hoofdtaxon meerdere taxons defineren. Maar geen additionele lagen |
Resources | Categorieën vereisen veel rekenkracht - Met mate gebruiken! | Rekenkracht-vriendelijk |
Filter-weergave | Styling-mogelijkheden lijken beperkt te zijn en alle filters lijken in één widget te zitten, maar je kunt wél hiërarchische filters hebben, en dat is soms onmisbaar | Styling is flexibel. Je kunt elk filter als een aparte widget plaatsen |
Analogie van een warenhuis
Dit voorbeeld benadert het verschil tussen attributes en categorieen als volgt aan de hand van een voorbeeld van het kopen van een spijkerbroek bij (in mijn geval) C&A:
- Categorieen: Herenkleding >> Vrije tijd >> Spijkerbroeken
- Attributes: merk, maat, stijl, etc.
Klinkt intuïtief/ergonomisch, maar in de praktijk kan ik hier weinig mee.
Conclusies
- Hiërarchische taxonomie noodzakelijk? → Gebruik Categorieën
- Taxon-pagina's (=Categorie-pagina's) noodzakelijk? → Gebruik Categorieën
- Overige situaties: Gebruik Attributen.
Zie ook
- Attribuut-taxonomieën
- Categorieën (WordPress)
- PHP-API » wp_insert_term
- PHP-API » wp_set_object_terms
- Product cat-taxonomieën (WordPress)
- Taxonomieën (Algemeen)
Bronnen
Algemeen
- http://www.siteground.com/tutorials/wordpress/video/categories.htm
- https://code.tutsplus.com/tutorials/understanding-and-working-with-taxonomies-and-terms-in-wordpress--cms-21051 - Aardige inleiding, maar geen PHP-functies
- https://developer.wordpress.org/reference/files/wp-includes/taxonomy.php/ - Vermoedelijk alle taxonomie-gerelateerde functies bij elkaar
- https://codex.wordpress.org/Taxonomies - Hoopvol