Taxonomy indexing

Same name in other branches
  1. 9 core/modules/taxonomy/taxonomy.module \taxonomy_index
  2. 8.9.x core/modules/taxonomy/taxonomy.module \taxonomy_index
  3. 10 core/modules/taxonomy/taxonomy.module \taxonomy_index
  4. 11.x core/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 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 variable 'taxonomy_maintain_index_table' to FALSE to avoid unnecessary writes in SQL.

File

modules/taxonomy/taxonomy.module, line 1879

Functions

Title Sort descending File name Summary
taxonomy_build_node_index modules/taxonomy/taxonomy.module Builds and inserts taxonomy index entries for a given node.
taxonomy_delete_node_index modules/taxonomy/taxonomy.module Deletes taxonomy index entries for a given node.
taxonomy_field_presave modules/taxonomy/taxonomy.module Implements hook_field_presave().
taxonomy_node_delete modules/taxonomy/taxonomy.module Implements hook_node_delete().
taxonomy_node_insert modules/taxonomy/taxonomy.module Implements hook_node_insert().
taxonomy_node_update modules/taxonomy/taxonomy.module Implements hook_node_update().
taxonomy_taxonomy_term_delete modules/taxonomy/taxonomy.module Implements hook_taxonomy_term_delete().

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.