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 sticky and created. This is used as a lookup table by taxonomy_select_nodes(). When using other field storage engines or alternative methods of denormalizing this data you should set the config option 'maintain_index_table' to FALSE in the taxonomy.settings.json configuration file to avoid unnecessary writes in SQL.
File
- core/
modules/ taxonomy/ taxonomy.module, line 1993 - 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_config_create_validate |
core/ |
Implements hook_config_create_validate() |
taxonomy_config_info |
core/ |
Implements hook_taxonomy_config_info(). |
taxonomy_delete_node_index |
core/ |
Deletes taxonomy index entries for a given node. |
taxonomy_field_presave |
core/ |
Implements hook_field_presave(). |
taxonomy_node_insert |
core/ |
Implements hook_node_insert(). |
taxonomy_node_predelete |
core/ |
Implements hook_node_predelete(). |
taxonomy_node_update |
core/ |
Implements hook_node_update(). |
taxonomy_taxonomy_term_delete |
core/ |
Implements hook_taxonomy_term_delete(). |