register_post_type()
aceita um parâmetro capabilities
em seus argumentos. Veja get_post_type_capabilities()
para possíveis valores. Dos comentários:
Por padrão, sete chaves são aceitas como parte da matriz de recursos:
edit_post
,read_post
edelete_post
são meta capacidades, que são então geralmente mapeado para capacidades primitivas correspondentes dependendo da contexto, que seria o post sendo editado / lido / apagado e o usuário ou papel sendo verificado. Assim, essas capacidades geralmente não seriam concedidas diretamente para usuários ou funções.
edit_posts
- Controla se os objetos desse tipo de postagem podem ser editados.edit_others_posts
- Controla se objetos deste tipo pertencentes a outros usuários podem ser editados. Se o tipo de postagem não suportar um autor, isso se comportará comoedit_posts
.publish_posts
- Controla os objetos de publicação desse tipo de postagem.read_private_posts
- Controla se objetos privados podem ser lidos.Estes quatro recursos primitivos são verificados no núcleo em vários Localizações. Existem também outras sete capacidades primitivas que são não referenciada diretamente no núcleo, exceto em
map_meta_cap()
, o que leva os três recursos meta acima mencionados e os traduz em uma ou mais capacidades primitivas que devem então ser verificadas o usuário ou função, dependendo do contexto.
read
- Controla se os objetos deste tipo de postagem podem ser lidos.delete_posts
- Controla se os objetos desse tipo de postagem podem ser excluídos.delete_private_posts
- Controla se objetos privados podem ser excluídos.delete_published_posts
- Controla se os objetos publicados podem ser excluídos.delete_others_posts
- Controla se os objetos pertencentes a outros usuários podem ser excluídos. Se o tipo de postagem não suportar um autor, isso se comportará comodelete_posts
.edit_private_posts
- Controla se objetos privados podem ser editados.edit_published_posts
- Controla se objetos publicados podem ser editados.Esses recursos adicionais são usados apenas em
map_meta_cap()
. Portanto, eles são atribuídos apenas por padrão se o tipo de postagem for registrado com o argumento'map_meta_cap'
definido comotrue
(o padrão éfalse
).
Em seus argumentos de registro, adicione:
'capabilities' => array(
'edit_post' => 'update_core',
'read_post' => 'update_core',
'delete_post' => 'update_core',
'edit_posts' => 'update_core',
'edit_others_posts' => 'update_core',
'delete_posts' => 'update_core',
'publish_posts' => 'update_core',
'read_private_posts' => 'update_core'
),