it-swarm.com.de

Die Seite mit den Themenoptionen wird im Administratormenü nicht angezeigt

Ich entwickle gerade ein WordPress-Design und möchte, dass es einen Einstellungsbereich enthält, in dem beispielsweise der Google Analytics-Tracking-Code des Benutzers angegeben wird.

Nach den Anweisungen, die ich im Codex und in mehreren Tutorials erhalten habe, sollte dieser Code in der Datei functions.php ein Untermenü im Abschnitt "Darstellung" erstellen und entweder "Themeneinstellungen" anzeigen, wenn der Benutzer die Funktion "manage_options" besitzt. oder "Du sollst nicht bestehen." wenn nicht.

// Add theme settings link in the admin section menu

function add_appearance_menu() {
    add_theme_page('Theme preferences', 'Theme pref.', 'manage-options', 'interact-theme-settings', 'render_theme_settings');
}

add_action('admin_menu', 'add_appearance_menu');

// Render theme settings page

function render_theme_settings() {
    if (!current_user_can('manage_options')) {
    wp_die(__('You shall not pass.'));
    }
    echo "Theme preferences";
}

In meinem Admin-Menü wird jedoch nichts Neues angezeigt. Wenn ich versuche, manuell auf die Seite zuzugreifen ( http://mydomain.com/wp-admin/themes.php?page=interact-theme-settings ), wird dies angezeigt diese Fehlermeldung:

Sie haben keine ausreichenden Berechtigungen, um auf diese Seite zuzugreifen.

... das ist in keiner Weise die Meldung "Sie dürfen nicht bestehen", die ich in meiner Funktion render-theme_settings () angegeben habe.

Kann mir bitte jemand erklären, was mit meinem Code nicht stimmt? Vielen Dank im Voraus für Ihre Hilfe :)

BEARBEITEN: Ich möchte darauf hinweisen, dass der Benutzer, den ich teste, dies alles natürlich mit der Funktion 'manage_options' hat.

2
Drav'

manage-options sollte manage_options sein. Versuche dies:

 add_theme_page('Theme preferences', 'Theme pref.', 'manage_options', 'interact-theme-settings', 'render_theme_settings');
1
shanebp