taxonomy_content_report
A Drupal 10/11 module that generates content insight reports filterable by a hierarchical taxonomy tree. Each content-type section is powered by an embedded View, so editors and developers can fully customise the content tables via the standard Views UI without touching code.
Features
- Taxonomy tree sidebar | Hierarchical term tree with expand/collapse
- Breadcrumb navigation | Ancestor path shown when a term is selected
- Descendant roll-up | Selecting a parent term includes all child term content
- Summary dashboard | Published/unpublished counts + percentage bar per content type
- Bar or pie chart | Chart.js-powered summary chart (configurable)
- Date range filter | Filter content by created date
- Views integration | Embed any View display per content type
- "Edit View" shortcut | One-click link to edit the View in the UI
- Fallback table | Built-in table if no View is configured
- Permissions | Separate view + administer permissions
Similar projects
https://www.drupal.org/project/content_insights_report
Community Documentation
Navigate to Administration → Configuration → Content → Taxonomy Content Report Settings (`/admin/config/content/taxonomy-content-report`).
1. Choose a Vocabulary
Select the vocabulary whose term tree will power the sidebar filter. All
content filtered through the report will be scoped to terms from this vocabulary.
2. Map Content Types to Fields
For each content type that should appear in the report, select the entity
reference field on that type that points to terms in the chosen vocabulary.
- Only fields that reference `taxonomy_term` entities and target the selected vocabulary are shown. If you don't see a field, check that the field's "Reference type" settings include the correct vocabulary
3. Assign Views (optional but recommended)
For each content type, optionally assign a View display. The format is:
`view_machine_name:display_id` (selected via the dropdown).
The View must have a contextual filter for Taxonomy Term ID
(`taxonomy_term.tid`). When a term is selected in the sidebar, the module
passes that term's ID (plus all descendant term IDs joined with `+`) as the
contextual filter argument.
Recommended View setup
1. Create a new View of **Content** (node).
2. Add a **Contextual filter**: `Has taxonomy term ID` (choose your vocabulary).
3. Set "When the filter value is NOT available": `Display all results`.
4. Set "When the filter value IS available": `Limit to selected term and its children` (or use the default "Reduce duplicates" if using `+` with OR).
5. Add desired fields, sorting, and pager.
6. Save the View and note the View machine name and display ID.
4. Other Settings
- Tree depth: Maximum levels of the taxonomy tree to render (1–10)
- Show unpublished: Include unpublished nodes in summary counts
- Chart type: Bar, pie, or table-only
- Default date range: Pre-fill the date filter with N months back