Taxonomieën (WordPress): verschil tussen versies

Uit De Vliegende Brigade
Naar navigatie springen Naar zoeken springen
 
(48 tussenliggende versies door dezelfde gebruiker niet weergegeven)
Regel 1: Regel 1:
[[file:20190415-2246.png|thumb|1000px|Onder ''Products'' vind je maar liefst drie taxonomieën: '''Categories''', '''Tags''' en '''Attributes (kenmerken)''']]
+
[[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.
  
== Terminologie ==
+
== Categorieën ==
 
 
* ''Taxonomie'' is de algemene term voor systemen om data te ordenen (of zoiets). Vaak gebruik ik het ook als synoniem voor ''Categorieën''
 
* ''Categories'' is een specifieke WordPress-functionaliteit, waarmee je zowel platte als hiërarchische taxonomieën kunt vormen. Ik vind de naam niet handig
 
* ''Taxon'' is de benaming voor een ''term'' of ''label'' waarmee je objecten ordent. Meervoud schijnt ''taxa'' te zijn, maar ''taxons'' vind ik prettiger
 
* ''Taxon-namen:'' Een bekend taxonomisch systeem (dat niets met WordPress te maken heeft), is de ''taxonomie van Linnaeus'' (''Linnaean taxonomy''). Hierbij hebben taxons hun eigen naam. ''Zoogdieren'' is daar een voorbeeld van. Ik merk dat ik het niet handig vind om te denken in namen-van-taxons
 
* ''Elementen'' zijn de objecten die bij een taxon horen
 
* ''Labelen'' is het associëren van objecten aan taxons.
 
 
 
== 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''.  
 
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''.  
Regel 35: Regel 24:
 
</pre>
 
</pre>
  
=== WooCommerce product_cat-Categorieën ===
+
== WooCommerce product_cat-Categorieën ==
  
''Product_cat'' is een instantie van de Categorie-taxonomie, bedoeld voor de ''externe'' indeling/ontsluiting van WooCommerce-producten
+
''Product_cat'' is een instantie van de Categorie-taxonomie, bedoeld voor de hiërarchische indeling/ontsluiting van WooCommerce-producten.
 
 
Eigenlijk is ''product_cat'' geen eigen taxonomisch systeem. Vaak vind ik het handig om het desalniettemin wel als een apart taxonomisch systeem te benoemen. Als je het taxonomisch systeem van WooCommerce vergelijkt met de bewegwijzering in een groot warenhuis, dan zou <code>product_cat</code> overeenkomen met het boordje bij de lift, dat de afdelingen aangeeft - Externe indeling van producten.
 
  
 
{|
 
{|
Regel 45: Regel 32:
 
|}
 
|}
  
=== WooCommerce Attributes - Predefined attributes ===
+
== 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.  
 
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:
 
''WooCommerce-attributen'' komen in twee smaken:
Regel 77: Regel 62:
 
|}
 
|}
  
=== WooCommerce Attributes - Custom attributes ===
+
== 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.
 
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.
Regel 87: Regel 72:
 
|}
 
|}
  
=== WooCommerce Tags ===
+
== WooCommerce Tags ==
  
 
Als laatste kent WooCommerce een systeem voor ''tags''. Bv. om een ''folkstonomy'' te bouwen. Nog niet mee gewerkt.
 
Als laatste kent WooCommerce een systeem voor ''tags''. Bv. om een ''folkstonomy'' te bouwen. Nog niet mee gewerkt.
  
=== WooCommerce Custom fields ===
+
== 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).
 
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.
 
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 ==
 
 
[[file:20190423-1735.png|thumb|Producten - Categorieën]]
 
[[file:20190423-1736.png|thumb|producten - Attributen]]
 
[[file:20190423-1737.png|thumb|producten - Tags - Tot op heden nog niet gebruikt (april 2019)]]
 
[[file:20190423-1738.png|thumb|Ah, dit is de truuk tav. ''attributen'' (kenmerken): Het gaat om aspecten die inherent aan het product zijn. Ze komen ook terug op de productpagina's en (hopelijk) ook bij importeren]]
 
 
=== Intuïtief/ergonomisch ===
 
 
[https://www.sparklogix.com/ecommerce-categories-vs-attributes/ 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 is het relevant? Als ik alles met ''categorieën'' kan, waarom dan überhaupt ''attributen'' gebruiken? Het heeft namelijk een paar stomme beperkingen (zie verderop)
 
 
=== Inhoudelijke verschillen ===
 
 
{| border="2" cellpadding="4" cellspacing="0" style="margin-top:1em; margin-bottom:1em; background:#f9f9f9; border:1px #aaa solid; border-collapse:collapse;"
 
! Aspect !! Categorieën !! Attributen
 
|-
 
! Archief-pagina's
 
| Een ''archief-pagina'' oftewel (taxon-pagina) is hetzelfde als een taxon. Je kunt tekst en één afbeelding toevoegen || Alleen ruimte voor tekst
 
|-
 
! 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
 
|-
 
! Taxons
 
| Archief-pagina's en taxons zijn hetzelfde. Dus ruimte voor tekst en één afbeelding
 
| Alleen ruimte voor tekst
 
|-
 
! Resources
 
| Categorieën vereisen veel rekenkracht - Met mate gebruiken!
 
| Rekenkracht-vriendelijk
 
|-
 
|! Weergave als filters
 
| 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
 
|}
 
 
''' Conclusies '''
 
 
Ik houd het spijkerbroek-voorbeeld aan:
 
 
* Attributes gebruik ik voor eigenschappen van het betreffende product
 
* Categorieen gebruik ik voor het zoeken/ontsluiten van het betreffende product
 
  
 
== Zie ook ==
 
== Zie ook ==
  
 +
* [[Attributes vs. categories (WooCommerce) |      Attributes vs. categories]]
 
* [[Attribuut-taxonomieën (WooCommerce) |          Attribuut-taxonomieën]]
 
* [[Attribuut-taxonomieën (WooCommerce) |          Attribuut-taxonomieën]]
 
* [[Categorieën (WordPress)]]
 
* [[Categorieën (WordPress)]]
 +
* [[Databasemodel (WordPress)]]
 
* [[PHP-API (WordPress)#wp_insert_term (functie) | PHP-API » wp_insert_term]]
 
* [[PHP-API (WordPress)#wp_insert_term (functie) | PHP-API » wp_insert_term]]
 
* [[PHP-API (WordPress)#wp_set_object_terms      | PHP-API » wp_set_object_terms]]
 
* [[PHP-API (WordPress)#wp_set_object_terms      | PHP-API » wp_set_object_terms]]
 
* [[Product cat-taxonomieën (WordPress)]]
 
* [[Product cat-taxonomieën (WordPress)]]
 +
* [[Taxonomieën (Algemeen)]]
 +
* [[Taxonomieën - Datamodel (WordPress)]]
  
 
== Bronnen ==
 
== Bronnen ==

Huidige versie van 4 sep 2023 om 15:35

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.

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 hiërarchische indeling/ontsluiting van WooCommerce-producten.

Producten - Categorieën - Dit is product_cat, toch?

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.

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.

producten - Predefined Attributes

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.

Voorbeeld van WooCommerce Custom product attributes

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.

Zie ook

Bronnen

Algemeen

Attributes