[wp-hackers] Custom Role and Custom Post Types

Helen Hou-Sandi helen.y.hou at gmail.com
Sun Feb 13 16:01:04 UTC 2011


This should help with defining custom roles and capabilities, along with his
Members plugin:
http://justintadlock.com/archives/2010/07/10/meta-capabilities-for-custom-post-types

Definitely agreed on not fussing with the menu.

--
Helen Hou-Sandi
http://www.helenhousandi.com



On Sun, Feb 13, 2011 at 10:40 AM, Steve Taylor <steve at sltaylor.co.uk> wrote:

> I don't know the mechanics of adding new capabilities - just grab the
> Members plugin if you can't figure it out. But you need to specify the
> capabilities for the new post type in register_post_type, then add
> those capabilities to the new role - don't add "edit_posts".
>
> And yeah, removing menu items is an unsatisfactory hack - deal with
> capabilities and the rest follows.
>
> Steve
>
> On 13 February 2011 14:21, SWORD Studios <info at swordstudios.net> wrote:
> > I just ran this function to define the new role:
> >
> > //CUSTOM ROLE INFO
> > add_role( 'sr_webdesigner', 'Web Designer' );
> >
> > // get the the role object
> > //$role_object = get_role( 'sr_webdesigner' );
> >
> > // add $cap capability to this role object
> > //$role_object->add_cap( 'edit_posts' );
> >
> > I've been looking into "unset" $submenu for Add New but I can't find the
> > right submenu item and I'm not sure yet if that will prevent someone from
> > manually navigating to /post-new.php
> >
> > On Sun, Feb 13, 2011 at 9:15 AM, Steve Taylor <steve at sltaylor.co.uk>
> wrote:
> >
> >> Jesse,
> >>
> >> You probably need to pay attention to the capabilities-related
> >> argument of register_post_type:
> >>
> >>
> http://codex.wordpress.org/Function_Reference/register_post_type#Arguments
> >>
> >> I don't know how you're creating the new role - I used Justin
> >> Tadlock's Members plugin, which also allows customization of the
> >> role's capabilities. In tandem with the above arguments, I've been
> >> able to do this kind of thing.
> >>
> >> As for creating the new post on registration, yeah, I think you're on
> >> the right track with the new registration hook.
> >>
> >> cheers,
> >>
> >> Steve Taylor
> >>
> >> On 13 February 2011 13:42, SWORD Studios <info at swordstudios.net> wrote:
> >> > Thanks in advance for any help I get with this.
> >> >
> >> > I've defined a new role in wordpress called Designer.
> >> > I've create a custom post type called Profile.
> >> >
> >> > Designer needs to have 1 ability and that's to edit a Profile post.
> >> >
> >> > I need to accomplish the following
> >> >
> >> >   - Create a custom Role called "Designer" - DONE
> >> >   - I need to limit the capabilities of the Designer to ONLY edit
> their
> >> >   Profile post.  I do not want them to be able to "Add Posts" of any
> type
> >> >   because each Designer is only allowed one Profile Post
> >> >   - On registration of a "designer" a custom post "Profile" is created
> >> and
> >> >   published automatically with the new Designer set as the author
> >> >   - The title of this new Profile will be the name of the Designer set
> by
> >> >   the designer upon registration
> >> >
> >> >
> >> > Problems I'm having
> >> >
> >> >   - It's easy enough to limit the capabilities of the new role to only
> >> >   "edit posts" but that actually gives them access to the entire
> "Posts"
> >> admin
> >> >   panel which include "add new"
> >> >   - How do I define that they can ONLY edit a Custom Post Type rather
> >> than
> >> >   a simple Post
> >> >   - How do I auto create a custom post type upon registration of a new
> >> >   user? I figure I can grab the hook that is used for a new user
> >> registration
> >> >   and just add the post to the database manually.  If this is the best
> >> way of
> >> >   doing it, I can don't need help with this.
> >> >
> >> > Jesse Friedman
> >> > _______________________________________________
> >> > wp-hackers mailing list
> >> > wp-hackers at lists.automattic.com
> >> > http://lists.automattic.com/mailman/listinfo/wp-hackers
> >> >
> >> _______________________________________________
> >> wp-hackers mailing list
> >> wp-hackers at lists.automattic.com
> >> http://lists.automattic.com/mailman/listinfo/wp-hackers
> >>
> > _______________________________________________
> > wp-hackers mailing list
> > wp-hackers at lists.automattic.com
> > http://lists.automattic.com/mailman/listinfo/wp-hackers
> >
> _______________________________________________
> wp-hackers mailing list
> wp-hackers at lists.automattic.com
> http://lists.automattic.com/mailman/listinfo/wp-hackers
>


More information about the wp-hackers mailing list