Estou ficando muito confuso com as seguintes coisas:
- diferença entre os recursos de função e meta,
- diferença entre os recursos Meta e Primitivo,
- quando usar o
map_meta_cap()
filtro.
Houve muitas situações em que adiciono recursos personalizados ou existentes do WP às funções existentes ou personalizadas do WP, esperando que funcione imediatamente e na maioria das vezes não.
Vejo que as pessoas mencionam o map_meta_cap()
filtro, mas não consigo encontrar uma boa explicação sobre o que ele realmente faz, quando devo usá-lo e quando os recursos funcionarão imediatamente.
Espero que faça sentido.
Eu apreciaria imensamente explicações ou links para recursos que explicam isso bem.
Obrigado, Dasha
capabilities
user-roles
dashaluna
fonte
fonte
Respostas:
Isso seria melhor perguntar a comparar
Role
comCapabilities
, não apenasMeta capabilities
, mas como uma resposta simples:A
Role
define um conjunto de tarefas que um usuário atribuído à função tem permissão para executar.Capabilities
são atribuídos aRoles
Meta capacidades
edit_post
,read_post
edelete_post
são consideradosMeta Capabilities
como dependentes do contexto, por exemplo, a postagem sendo editada / lida / excluída. Isso não faz sentido se você disser que algum usuário temedit_post
capacidade, porque alguém lhe perguntará: ele / ela pode editar qual post?Recursos primitivos
São recursos como os
edit_posts
que não dependem de nenhum contexto e são intrínsecos ao usuário. Se alguém tiveredit_posts
capabalidade, poderá editar as postagens.Ao registrar um novo tipo de postagem usando
register_post_type
, você tem uma opção para acapability_type
qual diz quais são os recursos semelhantes? Lá, você pode apenas dizerpost
, o que significa que seus recursos são semelhantes aos dopost
tipo de postagem.Se você precisar de mais personalização, poderá dizer
book
ouarray( 'book', 'books' )
(o mesmo), por exemplo, ter os seguintes recursos:Ao usar
capability_type
como uma matriz, por exemplo, matriz ('história', 'histórias'), o primeiro elemento será usado para os recursos singulares e o segundo elemento da matriz para os recursos plurais.A
map_meta_cap()
função é chamada porWP_User->has_cap()
para converter um meta-recurso em um ou mais recursos primitivos.Também há um
map_meta_cap
parâmetro emregister_post_type
, que faz a mesma coisa, no registro post_type.fonte
...If somebody has edit_posts capabality, she/he can edit posts...
mas quais / de quem?