Blog Sections Open

TagSaver: Normalizing Tag Storage for Better Filtering

An extras spotlight on TagSaver and the broader idea of moving tag data into proper indexed tables instead of storing comma-separated values in one TV field.

Tag filtering in older Evolution CMS projects was often implemented by storing many comma-separated tags in one TV value and then filtering with LIKE %tag%. That works until it becomes slow, imprecise, and difficult to scale.

The donor idea

TagSaver moved tag handling toward a more normalized model: a table for tags and a relation table linking resources to tags, optionally with TV-aware context.

Why this is better than one comma-separated string

  • exact tag matching becomes possible
  • filtering gets faster with proper indexes
  • partial substring false positives disappear
  • multi-TV tagging strategies become easier to reason about

This is one of the better examples of an extra solving not just a UI problem, but a data-model problem that directly affects search quality and filtering performance.

Source: original community announcement. Related docs: DocLister filtering notes with TagSaver.

Newer post

choiceTV: Reusing Existing TV Values or Adding a New One

An extras note about a custom TV input that combines a select field with the ability to add a new value on the fly.

Older post

ManagerManager 0.4: A New Release for Backend Workflow Tweaks

A short extras release note for ManagerManager 0.4 and the period when its widget-based manager customization became a standard part of many Evolution CMS projects.