そのため、サイトのカスタム要件を満たすために、テーマ内に多数のカスタム ロールを作成しようとしています。
最初の、そして最も単純なのは、コンテンツチームの他の誰かが作成し、将来のある時点でスケジュールした投稿 (組み込み投稿タイプとカスタム投稿タイプの両方) を表示できるようにしたい「外部ビューアー」です。
最初はこれを試しました
$viewer_capabilities = array(
'read_private_pages' => true,
'read_private_posts' => true,
'read' => true
);
add_role('external_viewer', 'External Viewer', $viewer_capabilities );
しかし、ログインする/wp-admin
と「権限がありません」というメッセージが表示され、何もできませんでした。スケジュールされた投稿の 1 つに移動すると、「見つかりません」というメッセージが表示されました。
それで、私は試しました
$role_object = get_role( 'external_viewer' );
$role_object->add_cap( 'read_private_pages' );
$role_object->add_cap( 'read_private_posts' );
$role_object->add_cap( 'read' );
それは私をもう少し先に進めました。ログインして管理ダッシュボードを表示できますが、スケジュールされた投稿にアクセスすると、「ページが見つかりません」というメッセージが表示されます。
誰かが私が見逃しているものを見ることができますか?