| | |

WordPress: einfaches Userroles-Array für Rollenauswahl in Einstellungen

garage 1030787 1920

Um die Sichtbarkeitseinstellungen nur für angemeldete Benutzer zugänglicher Elemente zu steuern benötigte ich ein Formularfeld aus dem eine WordPress-Rolle gewählt werden kann. Dafür genügt ein einfaches Array mit dem Slug der Rolle und dem (übersetzten) Namen. Die Rolle ist der Schlüssel, der Name der Rolle der Wert.

function ppt_helper_roles_array() { global $wp_roles; foreach ( $wp_roles->roles as $role => $details ) { $roles[$role] = $details['name']; } return $roles; }
Code-Sprache: PHP (php)
Array ( [administrator] => Administrator [editor] => Editor [author] => Author [contributor] => Contributor [subscriber] => Subscriber )
Code-Sprache: PHP (php)

Anwendungsbeispiel

$options = get_option('settings_group'); echo '<select name="settings_group[role_setting]">'; foreach ( ppt_helper_roles_array() as $role => $label ) { echo '<option '.( $role == $options['role_setting'] ? 'selected="selected"' : '' ).' value="'.esc_attr($role).'">' . esc_html($label) . '</option>'; } echo '</select>';
Code-Sprache: PHP (php)

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.