Since a couple of days i am trying to find out how to let an editor to only let edit one specific page.
I have found this on the net: https://getkirby.com/docs/panel/permissions
Unfortunaltely this does not help as i want the editor only to see and to edit one specific page and nothing else.
Has anyone please an idea?
I am looking forward to hear from you. Thnak you!
Permissions is the way to go. But if the page is a descendant of pages, you will have to make those at least read accessible…
Thank you very much.
I tried the following that worked fine:
<?php
// site/roles/editor.php
return [
'name' => 'Editor',
'default' => false,
'permissions' => [
'*' => true,
'panel.site.update' => false,
'panel.page.visibility' => false,
'panel.access.options' => false,
'panel.widget.pages' => false,
'panel.page.delete' => false,
'panel.page.create' => false,
'panel.page.url' => false,
'panel.file.upload' => false,
'panel.file.delete' => false,
'panel.file.sort' => false,
'panel.file.update' => false,
'panel.file.rename' => false,
'panel.file.replace' => false,
'panel.widget.site' => false,
'panel.user.read' => false,
'panel.user.create' => false,
'panel.page.update' => function() {
return $this->target()->page()->template() === 'the-pages-name';
}
]
];
1 Like