Menu’s verbergen kan met de remove_menu_page() functie. Bepalen wie wat kan zien is mogelijk met de current_user_can functie.
Dus om bv. Links en Extra te verbergen voor alle users behalve admin(s):
function my_remove_menu_pages() {
remove_menu_page('link-manager.php');
remove_menu_page('tools.php');
}
if ( ! current_user_can('manage_options')) {
add_action( 'admin_menu', 'my_remove_menu_pages' );
}
Let op: met deze methode worden menu’s enkel verborgen, ze zijn in principe nog steeds toegankelijk voor gebruikers met de juiste rechten.
Om zaken echt ontoegankelijk te maken kan je gebruikers ook bepaalde rechten ontnemen met de remove_cap functie.
Dank je wel voor je antwoord! Ik denk dat de eerste voldoet. Dus verbergen, ik neem aan dat ze een menu-item dan alleen nog maar kunnen activeren bij het intypen in de adresbalk.
Maar stomme vraag: het voorbeeld hierboven, in welke file plaats ik dat? In /wp-admin/includes/plugin.php. ?
Dank!!
Mark
ik neem aan dat ze een menu-item dan alleen nog maar kunnen activeren bij het intypen in de adresbalk.
Inderdaad.
De code voeg je toe aan het functions.php
bestand van je huidige thema (via admin > Appearance > Editor)
Helemaal gelukt!! Briljant!!
Nog 1 uitdaging: er zit een menu itme waar de header en footer en nog wat elementen van het thema aangepast kunnen worden: wp-admin/admin.php?page=tfuse
Hoe schakel ik dat uit?
Ik heb het geprobeerd met remove_menu_page(‘admin.php?’); en met remove_menu_page(‘admin.php?page=tfuse’);
Any ideas?
Dank\Mark
Aanpassen van theme options vergt over het algemeen admin rechten. Ben je zeker dat dat menu toegankelijk is voor niet-admins?
aha, ik zie het, het staat er wel, maar na klikken heb je geen rechten… waarom staat het er dan zou je zeggen. wellicht dat ik de naam kan aanpassen van de button…… zoeken in de berg php-files….;-)) weet u dat?
mark
Niet zo flink van je theme developer 🙂 Wat je zou kunnen doen is in je theme files zoeken naar het stukje code dat het menu genereert, en restricties opleggen met de current_user_can
functie zoals hierboven. Andere optie is het menu verbergen met CSS en/of jQuery.