WordPress - Rechten aan redacteuren en auteurs toekennen en verwijderen


In het overzicht met tips staat een tip die gaat over het beschikbaar maken van het beheer van aangepaste menu's aan redacteuren (standaard niet mogelijk), daarnaast is er nog een andere tip die gaat over het laten beheren van gebruikers door redacteuren. In beide gevallen worden er extra rechten toegekend aan de rol Redactuer. Zo is het dus ook mogelijk om andere rechten te geven aan redacteuren of juist rechten te verwijderen.

Zo kan er bijvoorbeeld ingesteld worden dat redacteuren gepubliceerde berichten of pagina's niet meer mogen verwijderen, tegelijkertijd kun je ook andere soorten gebruikers rechten geven, zo kan bijvoorbeeld ingesteld worden dat auteurs pagina's mogen aanmaken, bewerken en verwijderen. Zo kunnen er veel combinaties gemaakt worden.

Hieronder zie je een voorbeeld van zowel het toekennen (add_cap) van rechten als het verwijderen (remove_cap) van rechten. In de code dan add_cap in remove_cap waarvan hieronder een voorbeeld. Een uitgebreid overzicht van alle mogelijkheden qua rechten toekennen aan gebruikers en weer verwijderen vind je hier op de website van WordPress.

// Type gebruiker (administrator, editor, author, contributor, subscriber)
$role_object = get_role('author');

// Rechten toevoegen
$role_object->add_cap('edit_theme_options');

// Rechten verwijderen
$role_object->remove_cap('delete_published_posts');


Voorbeelden

Een aantal voorbeelden hieronder.

$role_object = get_role('author');
$role_object->remove_cap('publish_posts');
$role_object->remove_cap('delete_posts');
$role_object->remove_cap('delete_others_posts');
$role_object->remove_cap('delete_private_posts');
$role_object->remove_cap('delete_published_posts');
$role_object->remove_cap('read_private_posts');
$role_object->remove_cap('edit_others_posts');

$role_object->remove_cap('upload_files');
$role_object->remove_cap('switch_themes');
$role_object->remove_cap('moderate_comments');
$role_object->remove_cap('manage_categories');
$role_object->remove_cap('edit_dashboard');

$role_object->remove_cap('publish_pages');
$role_object->remove_cap('delete_pages');
$role_object->remove_cap('delete_others_pages');
$role_object->remove_cap('delete_private_pages');
$role_object->remove_cap('delete_published_pages');
$role_object->remove_cap('read_private_pages');
$role_object->remove_cap('edit_others_pages');