About Template Access by Parents

ProcessWire module that allows limiting templates for new pages based on the parent page. Can be configured for each page individually. Also supports inheritance.

Category 1Admin Helpers
Admin helper modules are those that provide helpful tools, UI enhancements or optimizations to the admin panel (excluding Fieldtype or Inputfield modules).
Category 2Proof of Concept
Proof of concept modules are designed as examples or starting points for others to build from. May not be ideal for users wanting to plug-n-play.
Category 3Users and Access
Modules dealing with access in ProcessWire via Users, Roles or Permissions.
Release StateBeta
Close to stable, but users are advised to be cautious and test thoroughly.*
Module Version0.0.7
Class NameTemplateParents
Compatibility2.7, 3.0
Date AddedMay 2, 2016
Recommended ByNew recommendations may take up to 1 day to appear.


This module's files should be placed in /site/modules/TemplateParents/
How to install or uninstall modules



ProcessWire module that allows limiting templates for new pages based on the parent page


Beta - Proof-of-Concept, use at your own risk (though this shouldn't be too high as the module saves all settings in its own database table)


Tested with ProcessWire 2.7 and 3.x, though it should also work on older versions. If it works for you on 2.5 or 2.6, please let me know.


  • Download ZIP file and extract it under site/modules in your ProcessWire installation
  • In PW's backend, click on Modules -> Refresh
  • Install TemplateParent (ProcessTemplateParent will be installed alongside)
  • You'll find a new menu entry "Template Parents" under "Setup"
  • On this page, assign possible parent pages to your templates

Restrictions entered here will be applied after the regular regular restrictions in the template's family settings are applied, which means you can't make an already excluded template visible in the drop-down list for new page through this method, only disallow otherwise allowed templates.

From version 0.0.6 on you can also edit allowed parents directly on the family tab of the template.


This module also supports inheritance, i.e. allowing a template for child pages if the template has been allowed for one of the parent's ancestors.

To enable this functionality, go to Modules -> Configure -> ProcessTemplateParents, check the box for inheritance and save.

Note that a permission once granted for a parent can't be revoked further down.


Released under Mozilla Public License v2. See file LICENSE for details.