AdminRestrictBranch by Adrian Jones

Restrict site editors to a single branch of the tree.

Admin Restrict Branch

Processwire module to restrict site editors to a single branch of the tree.

Functionality

You can restrict the user to only be able to view and/or edit pages from a specific branch of the page tree.

Restrictions work in the admin list view as well as via the API for front-end editing (works with FREDI, FEEL, and manual API calls).

There are three ways to match users to a branch parent:

  • User Specified Branch Parent
  • Role Specified Branch Parent
  • Role Name
  • Custom PHP code

Name matching can be limited to a specific parent to reduce mis-matches and improve matching efficiency.

Determine whether non-matched users will have access to the entire page tree, or no access at all.

Determine whether to limit editing and list viewing, or just editing.

Specify branch exclusions which will allow for editing of PageTable content housed in external parent branches and some other use cases.

Conditionally prevent admin search from returning restricted pages for things like inserting links to pages via the autocomplete option in CKEditor.

Conditionally modify breadcrumbs to remove pages that are outside the restricted branch.

Support forum:

https://processwire.com/talk/topic/11499-admin-restrict-branch/

License


This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

(See included LICENSE file for full license text.)

Install and use modules at your own risk. Always have a site and database backup before installing new modules.

Twitter updates

  • ProcessWire 3.0.185 (dev) core updates, plus new Session Allow module— More
    17 September 2021
  • Three new ProcessWire Textformatter modules: Find/Replace, Markdown in Markup, and Emoji— More
    3 September 2021
  • This week we have a new master version released after a year in the making. With nearly 40 pull requests, hundreds of new additions and more than 100 issue reports resolved, this new version has a ton of great new stuff— More
    27 August 2021

Latest news

  • ProcessWire Weekly #384
    In the 384th issue of ProcessWire Weekly we'll cover the latest core updates, introduce a new module called Session Allow, and highlight a new site of the week. Read on!
    Weekly.pw / 18 September 2021
  • ProcessWire 3.0.184 new master/main version
    This week we have a new master/main version released after a full year in the making. As you might imagine, this new version has a ton of great new stuff and we’ll try to cover much of it here.
    Blog / 27 August 2021
  • Subscribe to weekly ProcessWire news

“We were really happy to build our new portfolio website on ProcessWire! We wanted something that gave us plenty of control on the back-end, without any bloat on the front end - just a nice, easy to access API for all our content that left us free to design and build however we liked.” —Castus, web design agency in Sheffield, UK