Odstranění části admin menu

WordPress není systém, který by nabízel přebujelé množství funkcí. Administrace je jednoduchá a přehledná. Přesto se občas může hodit, nějakou tu funkci natvrdo schovat před nenechavým klikáním zákazníka.

Celé administrátorské menu je uložené v souboru wp-admin/menu.php – do toho samozřejmě sahat nebudeme. Tento soubor nám postačí k tomu, abychom zjistili jak se menu tvoří. Menu je uložené ve dvou polích: $menu$submenu. Obě tyto pole můžeme svobodně upravit, protože se jedná o globální proměnné. Svobodně upravit znamená například část vymazat. Úpravu těchto polí musíme samozřejmě stihnout před tím, než se pole použijí při vykreslování menu.

Do souboru function.php, který najdete ve wp-content/template/cokoliv, stačí přidat nový hook a funkci:

function edit_remove_menu() {
  global $menu, $submenu;
  unset($menu[25]); // odstraní z menu komentáře
  unset($menu[15]); // odstraní z menu odkazy

  // dale je mozne upravit také submenu
  unset($submenu['edit.php'][15]); // odstraní Příspěvky / Štítky
}

add_action('admin_menu', 'edit_remove_menu');

Na závěr malé upozornění, jednotlivé skryté funkcionality nadále fungují, pouze nejsou vidět v menu. Takže pokud znáte tu správnou adresu, můžete se k nim normálně dostat.