The intention of pdoMenu is to be a drop-in replacement for Wayfinder. For most applications users may find this to be true, while others may find inconsistencies which can cause some confusion.

Snippet Call

Inconsistencies (1.11.1-pl)

When setting up the snippet call above, I attempted to use as many parameters as necessary to create the menu. The problem is, some of the attributes are simply ignored even though they are present in the code.

Is supposed to replaces the +classes placeholder in the &tplOuter with the values established at runtime via the parameter. Only classes="" is returned. If a dedicated snippet is used, the values appear.
Also does not work, though first, last, and active classes will appear in the +classes placeholder in the @tpl as expected.


The advantages of pdoMenu are many. The ability to place templates inline with the Snippet Call or on the File system can both be seen as highly beneficial for applications which can be of use to those desiring to bypass the necessity of the Element Tree.

Front-end developers can keep the HTML on the page facilitating new layout design. Package developers, on the other hand, can store their components on the file system.


Even with the inconsistencies, I prefer pdoMenu over Wayfinder and getResources due to the additional tools which it includes. For additional menus, navigation layouts, and side menus I typically lean towards pdoResources.

In this article

    Get The Book


    Kindle Edition

    MODX Revolution: Building the Web Your Way