Taxonomy Operations
Taxonomy Operations is a modular toolkit for auditing and maintaining taxonomy quality in Drupal 10, 11 and 12.
The core module provides reports and safe cleanup with a hard dependency only on Taxonomy. Optional submodules add governance (action plans), portable import/export, and usage trends. Node and Paragraphs are soft dependencies detected at runtime.
Modular architecture
- taxonomy_operations (core) — Insights dashboard, unused terms, top terms, similar-term detection, vocabulary/term overviews, Drush automation.
- taxonomy_operations_governance — Action plans with review, approval, simulation, locks, audit, rollback and operation history.
- taxonomy_operations_transfer — Portable import/export of terms (including field data).
- taxonomy_operations_trends — Cron usage snapshots and per-term trend charts.
Enable only the features you need. Action plans are reserved for high-impact work (merges, imports, governed cleanups). Simple unused-term cleanup can run via confirm form + Batch API without governance.
Core features
Taxonomy Insights dashboard
- Taxonomy Health Score.
- Per-vocabulary metrics: total terms, unused terms, duplicate labels.
- Recommendations and quick links to enabled tools.
Unused terms report and cleanup
- Filter by vocabulary and term name; pagination and CSV export.
- Dry-run by default.
- With governance: creates a reviewable cleanup action plan.
- Without governance: confirm form + Batch API delete.
Similar terms and merge
- Groups near-duplicate labels by normalized similarity.
- Suggests a canonical term from usage counts.
- Impact preview for node/paragraph references (when those modules exist).
- Optional per-bundle exclusions.
- Creates a merge action plan (requires the governance submodule).
Vocabulary and term overviews
- Vocabulary overview with usage, translations and operations.
- Single-term overview page.
- Filtered taxonomy overview form on vocabulary admin screens.
Top Terms
- Most-used terms by content type (requires Node).
- Filters and CSV export.
Governance submodule
- Action plan list with filters, pagination and CSV export.
- Lifecycle: pending → approved → running → completed / failed / cancelled (with retry).
- Single or double approval; production can enforce stricter rules.
- Real dry-run simulation with per-entity before/after diffs (no writes).
- Integrity check before execute (target terms, replacements, referenced fields); aborts on drift.
- Concurrency locks so two plans cannot touch the same tids/fields at once.
- Per-item audit trail and estimated vs executed impact comparison.
- Assisted rollback builds an inverse plan from audit rows (e.g. merge without delete).
- Filterable operation history with timing metrics and CSV export.
- Cron alerts for consecutive plan failures and rising unused-term ratios.
- Long runs use Drupal Batch API with configurable chunk size and max operations per plan.
Transfer submodule
- Portable vocabulary and term export (YAML/CSV-oriented transfer format).
- Import analysis/preview, then an import action plan (requires governance to execute safely).
- Stable import keys on terms for cross-site identity.
Trends submodule
- Cron-driven usage snapshots at configurable intervals.
- Per-term trend chart and tabular history.
Permissions
Core: view reports.
Governance: view / create / approve / execute / simulate / rollback action plans; view operation history; administer settings.
Transfer: export terms; import terms.
Drush commands
drush taxonomy-operations:cleanup-unused— options:--vid,--dry-rundrush taxonomy-operations:similar-groups <vid>— options:--threshold,--min-sizedrush taxonomy-operations:similar-merge <vid>— interactive; options:--threshold,--dry-run,--remove-merged
Main admin paths
/admin/reports/taxonomy— Insights dashboard/admin/reports/taxonomy/unused-terms— Unused terms/admin/reports/taxonomy/unused-terms/cleanup— Cleanup/admin/reports/taxonomy/top-terms— Top terms/admin/reports/taxonomy/action-plans— Action plans (governance)/admin/reports/taxonomy/action-plans/{plan}— Review / simulate / audit/admin/reports/taxonomy/history— Operation history (governance)/admin/reports/taxonomy/trend/{tid}— Term trend (trends)/admin/config/system/taxonomy-trend-settings— Settings- Vocabulary tabs: Overview, List Similar, Export, Import
Requirements
- Drupal 10, 11 or 12
- Taxonomy (core)
- Optional: Node, Paragraphs
- Optional submodules listed above
Operational notes
- After updates:
drush updb -yanddrush cr. - Prefer dry-run before large cleanups or merges.
- Use approve vs execute permissions for separation of duties.
- No generic action-plan plugin API yet — plan types stay first-party until there is a real extension need.
Project information
- Project categories: Access control, Accessibility, Administration tools
- Created by cristianodemari on , updated
Stable releases for this project are covered by the security advisory policy.
Look for the shield icon below.
