ロール機能とメタ機能の違い
それは、だけでなく、と比較Role
するCapabilities
だけMeta capabilities
でなく、簡単な答えとして尋ねることをお勧めします。
Aは、Role
役割を割り当てられたユーザーが実行を許可されている一連のタスクを定義します。
Capabilities
に割り当てられています Roles
メタ機能とプリミティブ機能の違いは?
メタ機能
edit_post
、read_post
とがdelete_post
あると言われているMeta Capabilities
、彼らは文脈に依存しているため、例えばポストが編集されている/読み出し/削除。edit_post
誰かがあなたに尋ねるので、あなたが言うならばそれは意味がありません:誰かがあなたに尋ねます:彼女/彼はどの投稿を編集できますか?
プリミティブ機能
これらはedit_posts
、コンテキストに依存しないような機能であり、ユーザーに固有のものです。edit_posts
能力に余裕がある人は、投稿を編集できます。
いつmap_meta_cap()フィルターを使用するのですか?
を使用して新しい投稿タイプを登録register_post_type
する場合、使用するオプションがあります。capability_type
これには、どのような機能と似ていますか?そこでは単にと言うかもしれませんpost
。つまり、あなたの機能はpost
投稿タイプの機能に似ています。
Buより多くのカスタマイズが必要な場合は、book
またはarray( 'book', 'books' )
(同じ)たとえば、次の機能を使用できます。
capabilities' => array(
'edit_post' => 'edit_book',
'read_post' => 'read_book',
'delete_post' => 'delete_book',
'edit_posts' => 'edit_books',
'edit_others_posts' => 'edit_others_books',
'publish_posts' => 'publish_books',
'read_private_posts' => 'read_private_books',
'create_posts' => 'edit_books',
)
capability_type
array( 'story'、 'stories')などの配列として使用する場合、最初の要素は単数機能に使用され、2番目の配列要素は複数機能に使用されます。
このmap_meta_cap()
関数はWP_User->has_cap()
、メタ機能を1つ以上のプリミティブ機能に変換するために呼び出されます。
にはpost_type登録時に同じことを行うmap_meta_cap
パラメータもありますregister_post_type
。