You are here

Taxonomy indexing in Drupal 9

Same name and namespace in other branches
  1. 8 core/modules/taxonomy/taxonomy.module \taxonomy_index
  2. 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

Namesort descending Location Description
taxonomy_build_node_index core/modules/taxonomy/taxonomy.module Builds and inserts taxonomy index entries for a given node.
taxonomy_delete_node_index core/modules/taxonomy/taxonomy.module Deletes taxonomy index entries for a given node.
taxonomy_node_insert core/modules/taxonomy/taxonomy.module Implements hook_ENTITY_TYPE_insert() for node entities.
taxonomy_node_predelete core/modules/taxonomy/taxonomy.module Implements hook_ENTITY_TYPE_predelete() for node entities.
taxonomy_node_update core/modules/taxonomy/taxonomy.module Implements hook_ENTITY_TYPE_update() for node entities.
taxonomy_taxonomy_term_delete core/modules/taxonomy/taxonomy.module Implements hook_ENTITY_TYPE_delete() for taxonomy_term entities.