PR-5.4-dev Pending

User tests: Successful: Unsuccessful:

avatar RiteshGite
RiteshGite
16 May 2026

Pull Request resolves #47675.

  • I read the Generative AI policy and my contribution is either not created with the help of AI or is compatible with the policy and GNU/GPL 2 or later.

Summary of Changes

Changed data-nested="false" to data-nested="true" in three components that have nested hierarchies:

  • administrator/components/com_categories/tmpl/categories/default.php
  • administrator/components/com_menus/tmpl/items/default.php
  • administrator/components/com_modules/tmpl/modules/default.php

Reason: These components have hierarchical structures indicated by data-parents and data-level attributes (or position-based grouping in Modules), so data-nested="true" correctly reflects their structure.

Affected Components

  • Categories (parent-child hierarchy: has parent_id, data-parents, data-level)
  • Menu Items (parent-child hierarchy: has parent_id, data-parents, data-level)
  • Modules (position-based nesting: grouped by position)

Testing Instructions

  1. Go to Administrator → Components → Categories

    • Create a parent category with at least one child category
    • Try drag-and-drop sorting on the Categories list
    • Verify rows sort correctly and parent-child relationships are maintained
  2. Go to Administrator → Menus → Select any menu → Menu Items

    • Create a menu item with at least one child item
    • Try drag-and-drop sorting on Menu Items list
    • Verify it works and parent-child relationships are maintained
  3. Go to Administrator → Extensions → Modules

    • Try drag-and-drop sorting within the same position
    • Verify modules can only be reordered within their position group
    • Verify no regression in functionality
  4. Go to Administrator → Content → Workflows and verify no regression

Ensure that:

  • Drag-and-drop sorting works correctly for all three components
  • Parent-child relationships are preserved in Categories and Menu Items
  • Position-based ordering works in Modules
  • Order is saved correctly
  • No functional behavior is affected in other components

Actual result BEFORE applying this Pull Request

Categories, Menu Items, and Modules components were marked with data-nested="false" despite having hierarchical structures.

The drag-drop functionality worked only because of a JavaScript bug where the string "false" is treated as truthy in JavaScript, accidentally enabling nested behavior even though the attribute said otherwise.

Expected result AFTER applying this Pull Request

The data-nested attribute now correctly reflects the actual component structure:

  • Categories → data-nested="true" (parent-child hierarchy)
  • Menu Items → data-nested="true" (parent-child hierarchy)
  • Modules → data-nested="true" (position-based nesting)
  • Workflows → data-nested="false" (flat list, unchanged)

This prepares the codebase for the JavaScript fix in PR #47689, which will properly convert string attribute values to booleans.

Link to documentations

avatar RiteshGite RiteshGite - open - 16 May 2026
avatar RiteshGite RiteshGite - change - 16 May 2026
Status New Pending
avatar joomla-cms-bot joomla-cms-bot - change - 16 May 2026
Category Administration com_categories com_menus
avatar RiteshGite RiteshGite - change - 16 May 2026
Labels Added: PR-5.4-dev
avatar RiteshGite RiteshGite - change - 16 May 2026
The description was changed
avatar RiteshGite RiteshGite - edited - 16 May 2026
avatar joomdonation
joomdonation - comment - 16 May 2026

Thanks @RiteshGite. Could you please also make change to Modules as well ? Modules are actually nested, we can only drag and drop to change ordering of modules within same position, so we also need to change data-nested="true", too

avatar joomla-cms-bot joomla-cms-bot - change - 16 May 2026
Category Administration com_categories com_menus Administration com_categories com_menus com_modules
avatar RiteshGite
RiteshGite - comment - 16 May 2026

@joomdonation Done!

I've added the change for Modules as well.

Updated PR now includes:

  • Categories (parent-child hierarchy)
  • Menu Items (parent-child hierarchy)
  • Modules (position-based nesting)

All three components now correctly reflect their nested structure
with data-nested="true".

Thanks for catching that!

avatar richard67 richard67 - change - 18 May 2026
Title
Fix: Change data-nested='true' for nested components (Categories, Menu Items)
[5.4] Fix: Change data-nested='true' for nested components (Categories, Menu Items)
avatar richard67 richard67 - edited - 18 May 2026
avatar richard67 richard67 - change - 18 May 2026
Title
[5.4] Fix: Change data-nested='true' for nested components (Categories, Menu Items)
[5.4] Fix: Change data-nested='true' for nested components (Categories, Menu Items, Modules)
avatar richard67 richard67 - edited - 18 May 2026
avatar richard67
richard67 - comment - 18 May 2026

@joomdonation Done!

I've added the change for Modules as well.

Updated PR now includes:

* Categories (parent-child hierarchy)

* Menu Items (parent-child hierarchy)

* Modules (position-based nesting)

All three components now correctly reflect their nested structure with data-nested="true".

Thanks for catching that!

@RiteshGite Could you update the description of your PR? It still mentions modules as using false.

avatar RiteshGite RiteshGite - change - 18 May 2026
The description was changed
avatar RiteshGite RiteshGite - edited - 18 May 2026
avatar RiteshGite
RiteshGite - comment - 18 May 2026

@richard67 Updated the PR description to include the Modules changes as well.

Add a Comment

Login with GitHub to post a comment