v25 – Skapa egna capabilities (permissions) i WordPress

Att skapa egna capabilities i WordPress är väldigt enkelt. I din plugin kan du ge en specifik användare, eller en användarroll, nya capabilities som du sedan kan leta efter på den inloggade användaren.

Lägg till en custom capability

// place this code inside a wordpress hook,
// such as register_activation_hook()

/**
 * add capability to user role
 */
// get the role to add a capability to
$role = get_role('administrator');
// add a custom capability (permission)
$role->add_cap('my_custom_capability'); 


/**
 * add capability to a specific user
 */
// get the user to add a capability to
$user = new WP_User( $user_id );
// add a custom capability (permission)
user->add_cap('my_custom_capability'); 

Kontrollera om en användare har en capability

if(current_user_can('my_custom_capability')) {
    // user has capability
} else {
    // user does not have capability
}

Med current_user_can() kan du när som helst fråga WordPress om nuvarande användare har en viss capability. Om du vill fråga WordPress om en annan användare än nuvarande inloggad finns det även funktionen user_can().

Ta bort en custom capability

// place this code inside a wordpress hook,
// such as register_uninstall_hook()

/**
 * remove capability form user role
 */
// get the role to remove capability from
$role = get_role('administrator');
// remove custom capability (permission)
$role->remove_cap('my_custom_capability'); 


/**
 * remove capability from a specific user
 */
// get the user to remove capability from
$user = new WP_User( $user_id );
// remove a custom capability (permission)
user->remove_cap('my_custom_capability');

Läs mer om custom capabilities

0 votes