Taxonomy indexing in Drupal 9
Same name and namespace in other branches
- 8 core/modules/taxonomy/taxonomy.module \taxonomy_index
- 7 modules/taxonomy/taxonomy.module \taxonomy_index
Functions to maintain taxonomy indexing.
Taxonomy uses default field storage to store canonical relationships between terms and fieldable entities. However its most common use case requires listing all content associated with a term or group of terms sorted by creation date. To avoid slow queries due to joining across multiple node and field tables with various conditions and order by criteria, we maintain a denormalized table with all relationships between terms, published nodes and common sort criteria such as status, sticky and created. When using other field storage engines or alternative methods of denormalizing this data you should set the taxonomy.settings:maintain_index_table to '0' to avoid unnecessary writes in SQL.
File
- core/
modules/ taxonomy/ taxonomy.module, line 275 - Enables the organization of content into categories.
Functions
Name | Location | Description |
---|---|---|
taxonomy_build_node_index |
core/ |
Builds and inserts taxonomy index entries for a given node. |
taxonomy_delete_node_index |
core/ |
Deletes taxonomy index entries for a given node. |
taxonomy_node_insert |
core/ |
Implements hook_ENTITY_TYPE_insert() for node entities. |
taxonomy_node_predelete |
core/ |
Implements hook_ENTITY_TYPE_predelete() for node entities. |
taxonomy_node_update |
core/ |
Implements hook_ENTITY_TYPE_update() for node entities. |
taxonomy_taxonomy_term_delete |
core/ |
Implements hook_ENTITY_TYPE_delete() for taxonomy_term entities. |