Skip to content

Joomla Categories Deep Dive — Nested Hierarchies and Category Permissions

DodaTech Updated 2026-06-27 10 min read

In this tutorial, you'll take a deep dive into Joomla category management — nested hierarchies with unlimited levels, category permissions per user group, category layout options, images and descriptions, and category-based navigation with breadcrumbs.

What You'll Learn

  • Understanding category hierarchy concepts: root, parent, child, grandchild
  • Creating nested categories with parent selection
  • Configuring category permissions per user group (view, create, edit, delete)
  • Category layout options: blog layout and list layout
  • Adding category images and descriptions
  • Category-based menu items: Category Blog and Category List
  • Breadcrumb integration with category hierarchy
  • Advanced category options: articles per page, columns, leading articles

Why It Matters

Categories are the backbone of Joomla's content architecture. Simple category use works for small sites, but as your site grows, you need nested hierarchies to organize content at scale. Combined with category-level permissions, you can create editorial workflows where different teams manage different sections. Understanding categories deeply gives you the power to build complex content structures that are both user-friendly and manageable.

Real-World Use

A large corporate website has departments: Products, About Us, News, Careers, and Support. Each department has multiple sub-sections. Products includes Software, Hardware, and Services. Software has Enterprise and Consumer. The editorial team manages News. The HR team manages Careers. Category permissions restrict each team to their own sections. The breadcrumb trail shows the full path: Home > Products > Software > Enterprise, helping users navigate the hierarchy.

Learning Path

flowchart LR
  A["Content Modules"] --> B["Categories Deep Dive
You are here"]:::current B --> C["Workflow & Publishing"] C --> D["Menu System"] D --> E["Menu Item Types"] classDef current fill:#38bdf8,color:#0f172a,stroke-width:2px

Category Hierarchy Concepts

A category hierarchy is a tree structure where categories can contain subcategories. Joomla supports unlimited nesting levels, though practical usability suggests keeping to 3-4 levels.

The Root Category

Every Joomla installation has a single Root category. This is the top of the hierarchy. You cannot delete or rename Root. All other categories are descendants of Root.

Parent and Child Categories

When you create a category, you can assign it a Parent. If no parent is selected, the category is a direct child of Root.

Example hierarchy:

Root
├── Products [Parent: Root]
│   ├── Software [Parent: Products]
│   │   ├── Enterprise [Parent: Software]
│   │   └── Consumer [Parent: Software]
│   ├── Hardware [Parent: Products]
│   └── Services [Parent: Products]
├── News [Parent: Root]
│   ├── Press Releases [Parent: News]
│   └── Blog [Parent: News]

Each level adds depth to the URL. An article in "Enterprise" might have a URL like: example.com/products/software/enterprise/article-title.

Why Hierarchy Matters

Hierarchy affects three things:

  1. URL structure: Deeper categories produce longer URLs, which can help or hurt SEO depending on the context
  2. Breadcrumbs: The hierarchy determines the breadcrumb trail shown to users
  3. Permissions: Category permissions can be set per level, with inheritance from parent to child
  4. Content organization: Users browsing a parent category can see articles from all child categories

Creating Nested Categories

To create a nested category:

  1. Go to Content > Categories.
  2. Click New.
  3. Enter the Title (e.g., "Software").
  4. In the Parent field, select the parent category (e.g., "Products").
  5. Configure other options and save.

You can also change the parent of an existing category by editing it and selecting a new parent. Moving a category moves all its child categories and articles with it.

Reordering Categories

In the Category Manager, you can drag categories to reorder them. The order affects how categories appear in menus and category listings.

Category Permissions

Category permissions are one of Joomla's most powerful features. They let you control exactly what each user group can do within a specific category.

Access Levels

The View Level field controls who can see the category and its articles:

  • Public: Everyone can see it
  • Registered: Only logged-in users
  • Special: Users with Special access level (typically Super Users and Administrators)
  • Custom: Your own access levels

Action Permissions

Each category has these permissions:

Permission Description Default for Manager
View Level Who can see this category Public
Create Who can create articles in this category Allowed
Delete Who can delete articles Denied
Edit Who can edit articles in this category Allowed
Edit State Who can change article status Allowed
Edit Own Who can edit only their own articles Allowed

Permission Inheritance

Category permissions follow a hierarchy:

  1. Global Configuration permissions set the default for all categories.
  2. Category-level permissions override global settings.
  3. Child categories inherit from their parent unless explicitly overridden.

This means you can set a default at the top level and only change specific categories as needed.

Real-World Permission Example

For a site with multiple content teams:

News category:
  - Create: Journalists group
  - Edit: Journalists group
  - Edit State: Editors group
  - Delete: Super Users only

Products category:
  - Create: Product Managers group
  - Edit: Product Managers group
  - Edit State: Content Managers group

Each team can only work in their assigned categories, and only certain users can publish or delete content.

Category Layout Options

Each category can have its own layout settings that control how articles are displayed.

Blog Layout

The blog layout displays articles in a magazine-style grid:

  • Leading Articles: Number of articles shown with full intro text (spans full width)
  • Intro Articles: Number of articles shown with intro text in columns
  • Columns: Number of columns for intro articles
  • Links: Number of linked article titles at the bottom
  • Multi-column Ordering: Order articles down then across, or across then down

List Layout

The list layout displays articles in a simple table-style list:

  • Show Headings: Display table headings
  • Show Date: Display article dates
  • Show Hits: Display article hit counts
  • Show Author: Display author names
  • Filter Field: Show a text filter to search within the list
  • Pagination: Show or hide page navigation

Category Options

  • Show Category Title: Display the category name
  • Show Category Description: Display the description text
  • Show Category Image: Display the category image
  • Max Level Depth: How deep to show subcategories

Article Options

  • Show Title: Display article title
  • Show Intro Text: Display intro text in full article view
  • Position of Article Info: Above or below content
  • Show Category: Display category name
  • Show Author: Display author name
  • Show Date: Display publication date
  • Show Hits: Display hit count
  • Show Navigation: Show prev/next article links
  • Show Read More: Show readmore link

Category Images

Each category can have an image that appears on the category page. To add one:

  1. Edit the category.
  2. In the Images tab, click Select to open the Media Manager.
  3. Choose an image.
  4. Set Float (left, right, none) and Alt Text.

The image appears at the top of the category page, next to or above the description. It helps visually distinguish sections and improves user engagement.

Category Description

The category description is text that appears on the category page. It can include:

  • A brief overview of the category's content
  • Links to important subcategories
  • An introduction for new visitors

You can show or hide the description, and control whether it appears above or below the articles.

Joomla automatically generates breadcrumbs based on the category hierarchy. When a user views an article in "Enterprise" under "Software" under "Products", the breadcrumb shows:

Home > Products > Software > Enterprise > Article Title

To display breadcrumbs, add the Breadcrumbs module to a position on your site (typically position-2 or above the content area). The module reads the current page's category hierarchy and generates the trail.

Breadcrumbs help users:

  • Understand where they are in the site structure
  • Navigate back to parent sections
  • Improve SEO by providing internal links

Category-Based Menu Items

Category Blog

Creates a blog-style page showing articles from one category. Configure:

  • Category: Select the source category
  • Include Subcategories: Include articles from child categories
  • Layout Options: Leading, intro, columns, links, pagination
  • Category Options: Show/hide title, description, image
  • Article Options: Show/hide article properties

Category List

Creates a list-style page showing articles from one category. Configure:

  • Category: Select source category
  • Include Subcategories: Include child articles
  • List Options: Headings, filter, pagination, ordering
  • Category Options: Show/hide title, description, image

Common Mistakes

  1. Creating categories without considering URL impact: Category hierarchy directly affects URL structure. example.com/products/software/enterprise is clear. example.com/level1/level2/level3/level4/level5 is confusing. Keep URLs shallow.

  2. Setting overly restrictive category permissions: Beginners sometimes set category view level to "Registered" or "Special" without realizing it hides the entire section from public visitors. Always test permissions as a non-logged-in user.

  3. Ignoring permission inheritance: Changing permissions on a parent category affects all child categories unless they have explicit overrides. Document your permission structure to avoid surprises.

  4. Using too many category images: Large category images slow down page loads. Compress images and use appropriate dimensions (typically 1200x300 pixels for category headers).

  5. Not using subcategories when needed: Some beginners create 50 flat categories under Root. Use nested hierarchies to organize related content into parent-child groups.

Practice Questions

  1. How deep can Joomla category hierarchies go? Answer: Joomla supports unlimited nesting levels. In practice, keep hierarchies to 3-4 levels for usability and SEO benefits.

  2. What happens to child categories when you move a parent category? Answer: All child categories and their articles move with the parent. The hierarchy structure is preserved. URLs update to reflect the new path.

  3. How do category permissions inherit from parent to child? Answer: Child categories inherit permissions from their parent unless explicitly overridden. Global Configuration sets the default, and category-level settings override that.

  4. Challenge: Create a category permission structure for a multi-author blog. Create user groups: Authors (can create and edit own articles), Editors (can edit all articles and change states), Publishers (full control). Assign these groups to a News hierarchy with at least 5 subcategories. Test each permission by logging in as each user type.

FAQ

Can I have an article in multiple categories?

No, each article belongs to exactly one primary category. Use tags to cross-reference content across categories.

How do I exclude child categories from a category blog display?

In the menu item options for the Category Blog, set 'Include Subcategories' to 'No'. This shows only articles directly in the selected category.

Can I change the parent of a category after creating it?

Yes. Edit the category and select a different parent. All articles and child categories move with it.

Do category permissions affect existing articles?

Yes. Category permissions apply to all articles in the category, both existing and new. Changes take effect immediately.

How do I hide an empty category from display?

Go to Content > Categories, edit the category, and set 'Show Category' to 'Hide' in the Category Options tab. Or change its access level to 'Registered' to hide from public.

Mini Project

Your task: Build a complete category architecture for a documentation website.

  1. Create a root-level category called "Documentation."
  2. Under Documentation, create these child categories: Getting Started, User Guide, Developer Reference, API Reference, Troubleshooting.
  3. Under User Guide, create subcategories: Installation, Configuration, Features, Best Practices.
  4. Under Developer Reference, create subcategories: Hooks, Filters, Functions.
  5. Create at least 2 articles in each leaf category.
  6. Set up category permissions: "Authors" can edit "Getting Started" and "User Guide" only. "Developers" can edit "Developer Reference" and "API Reference" only.
  7. Create Category Blog menu items for the top-level Documentation category, showing 1 leading article, 4 intro articles in 2 columns.
  8. Add a Breadcrumbs module and verify the trail on each page.

What's Next

Now that you understand categories deeply, learn about publishing workflows:

Continue to Lesson 10: Workflow and Publishing — Learn article lifecycle management, scheduling, version history, and editorial workflows.

Related lessons:

Built by the developers of DodaTech

Doda Browser, DodaZIP & Durga Antivirus Pro