17452 Posts in 4473 Topics by 1971 members
|Go to End|
2 April 2008 at 4:48pm
I've got a page type that I don't want users to be able to add any more instances of to the site.
How can I restrict it, or (ideally) remove it from the Create dropdown in the CMS?
2 April 2008 at 4:50pm
* If this is false, the class cannot be created in the CMS.
* @var boolean
static $can_create = true;
Set it to false (:
2 April 2008 at 5:01pm Last edited: 2 April 2008 5:08pm
Tried it, doesn't work for me. I can still quite happily add pages to the site.
Interestingly, it *does* make it impossible to delete those pages via the CMS (the check option is greyed out when I choose 'Delete the selected page').
I also added...
static $can_be_root = false;
to my class, and that doesn't seem to have any effect either.
2 April 2008 at 5:05pm
hmm, try defining canCreate() and return false.
2 April 2008 at 5:09pm Last edited: 2 April 2008 5:12pm
ok, this worked...
static $can_create = MyPageType::canCreate;
2 April 2008 at 5:12pm
But ... why?
2 April 2008 at 5:14pm
Because you're an admin.
By default, setting $can_create to false only stops those that aren't full admins from creating the page.
As you overwrote canCreate() to always return false, no one can create it.
2 April 2008 at 5:15pm
aha. I see. cheers.
|Go to Top|