PHPackages                             markshust/magento2-module-hierarchycomplexidcompatibility - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. markshust/magento2-module-hierarchycomplexidcompatibility

ActiveMagento2-module[Utility &amp; Helpers](/categories/utility)

markshust/magento2-module-hierarchycomplexidcompatibility
=========================================================

The Hierarchy Complex ID Compatibility module makes the hierarchy compatible with long URL identifiers containing subpaths.

1.0.0(6y ago)41.3k1[1 issues](https://github.com/markshust/magento2-module-hierarchycomplexidcompatibility/issues)MITPHPPHP ^7.1

Since Nov 7Pushed 5y ago1 watchersCompare

[ Source](https://github.com/markshust/magento2-module-hierarchycomplexidcompatibility)[ Packagist](https://packagist.org/packages/markshust/magento2-module-hierarchycomplexidcompatibility)[ RSS](/packages/markshust-magento2-module-hierarchycomplexidcompatibility/feed)WikiDiscussions master Synced 3w ago

READMEChangelogDependencies (2)Versions (2)Used By (0)

MarkShust\_HierarchyComplexIdCompatibility
==========================================

[](#markshust_hierarchycomplexidcompatibility)

The Hierarchy Complex ID Compatibility module makes the hierarchy compatible with long URL identifiers containing subpaths.

 [![Supported Magento Versions](https://camo.githubusercontent.com/e6ffb378681cf3a75c502c9c705396c318148f3bc86ff423b080f410ad8a5b8f/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6d6167656e746f2d5e322e3320636f6d6d657263652d627269676874677265656e2e7376673f6c6f676f3d6d6167656e746f266c6f6e6743616368653d74727565267374796c653d666c61742d737175617265)](https://camo.githubusercontent.com/e6ffb378681cf3a75c502c9c705396c318148f3bc86ff423b080f410ad8a5b8f/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6d6167656e746f2d5e322e3320636f6d6d657263652d627269676874677265656e2e7376673f6c6f676f3d6d6167656e746f266c6f6e6743616368653d74727565267374796c653d666c61742d737175617265) [![Latest Stable Version](https://camo.githubusercontent.com/d749141aaced8d52224da2f6e12384f73d8cc6f457fe11203545333c9896cecf/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6d61726b73687573742f6d6167656e746f322d6d6f64756c652d686965726172636879636f6d706c65786964636f6d7061746962696c6974792e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/markshust/magento2-module-hierarchycomplexidcompatibility) [![Composer Downloads](https://camo.githubusercontent.com/bc863a374789315773b98cc4d98b653daaa700f672382636467a4a0c7d73bd2e/68747470733a2f2f706f7365722e707567782e6f72672f6d61726b73687573742f6d6167656e746f322d6d6f64756c652d686965726172636879636f6d706c65786964636f6d7061746962696c6974792f646f776e6c6f616473)](https://packagist.org/packages/markshust/magento2-module-hierarchycomplexidcompatibility) [![Maintained - Yes](https://camo.githubusercontent.com/04aba48520e6322ebc6c41b7995626a88ce408bd46ec4eb15ae474936b345276/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6d61696e7461696e65642533462d7965732d627269676874677265656e2e7376673f7374796c653d666c61742d737175617265)](https://GitHub.com/Naereen/StrapDown.js/graphs/commit-activity) [![](https://camo.githubusercontent.com/7013272bd27ece47364536a221edb554cd69683b68a46fc0ee96881174c4214c/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d626c75652e737667)](https://opensource.org/licenses/MIT)

Table of contents
-----------------

[](#table-of-contents)

- [Summary](#summary)
- [Requirements](#requirements)
- [Installation](#installation)
- [Usage](#usage)
- [License](#license)

Summary
-------

[](#summary)

The hierarchy functionality of Magento Commerce prepends the URL identifier of parent nodes to children. This is ok for CMS pages with standard, simple URLs.

However, if the URL contains subpaths the hierarchy request paths will be setup incorrectly, leading to undesired route locations and breadcrumb links.

This module changes the functionality when saving the hierarchy, making these longer URL strings compatibile.

### Before

[](#before)

[![Before request_url table has been updated](https://raw.githubusercontent.com/markshust/magento2-module-hierarchycomplexidcompatibility/master/docs/before.png)](https://raw.githubusercontent.com/markshust/magento2-module-hierarchycomplexidcompatibility/master/docs/before.png)

### After

[](#after)

[![After request_url table has been updated](https://raw.githubusercontent.com/markshust/magento2-module-hierarchycomplexidcompatibility/master/docs/after.png)](https://raw.githubusercontent.com/markshust/magento2-module-hierarchycomplexidcompatibility/master/docs/after.png)

Requirements
------------

[](#requirements)

This module requires the hierarchy functionality which is only available in Magento Commerce.

Installation
------------

[](#installation)

```
composer require markshust/magento2-module-hierarchycomplexidcompatibility
bin/magento module:enable MarkShust_HierarchyComplexIdCompatibility
bin/magento setup:upgrade

```

Usage
-----

[](#usage)

This module has no configuration. Just install, then go to Admin &gt; Content &gt; Elements &gt; Hierarchy, and re-save the hierarchy. The entire tree will be re-saved with the new request URLs.

In the event there are duplicate URLs in the tree, you will be notified. The hierarchy must not ever contain duplicate values for the request\_path.

[![Error](https://raw.githubusercontent.com/markshust/magento2-module-hierarchycomplexidcompatibility/master/docs/error.png)](https://raw.githubusercontent.com/markshust/magento2-module-hierarchycomplexidcompatibility/master/docs/error.png)

License
-------

[](#license)

[MIT](https://opensource.org/licenses/MIT)

###  Health Score

27

—

LowBetter than 47% of packages

Maintenance15

Infrequent updates — may be unmaintained

Popularity20

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

2430d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/437029?v=4)[Mark Shust](/maintainers/markshust)[@markshust](https://github.com/markshust)

---

Top Contributors

[![markshust](https://avatars.githubusercontent.com/u/437029?v=4)](https://github.com/markshust "markshust (2 commits)")

### Embed Badge

![Health badge](/badges/markshust-magento2-module-hierarchycomplexidcompatibility/health.svg)

```
[![Health](https://phpackages.com/badges/markshust-magento2-module-hierarchycomplexidcompatibility/health.svg)](https://phpackages.com/packages/markshust-magento2-module-hierarchycomplexidcompatibility)
```

###  Alternatives

[elgentos/regenerate-catalog-urls

Regenerate Catalog URL Rewrites (products, categories, cms pages)

2842.6M](/packages/elgentos-regenerate-catalog-urls)[nosto/module-nostotagging

Increase your conversion rate and average order value by delivering your customers personalized product recommendations throughout their shopping journey.

27703.7k4](/packages/nosto-module-nostotagging)[tig/postnl-magento2

TIG Magento 2 PostNL extension

59570.5k5](/packages/tig-postnl-magento2)[myparcelnl/magento

A Magento 2 module that creates MyParcel labels

1860.2k](/packages/myparcelnl-magento)[loki/magento2-components

Core module for defining Alpine.js components with advanced AJAX features

1011.8k26](/packages/loki-magento2-components)[zwernemann/module-withdrawal

Magento 2 EU Withdrawal Button Module - Adds a withdrawal/revocation button for orders in compliance with EU Directive (EU) 2023/2673

244.9k2](/packages/zwernemann-module-withdrawal)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
