Remova as "postagens" do administrador, mas mostre uma postagem personalizada

8

Após fazer o check-out: http://codex.wordpress.org/Function_Reference/remove_menu_page ,
usei com êxito o seguinte código para ocultar algumas coisas do menu:

add_action( 'admin_menu', 'my_remove_menu_pages' );

function my_remove_menu_pages() {
    remove_menu_page('link-manager.php');
    remove_menu_page('tools.php');
    remove_menu_page('users.php');
    remove_menu_page('edit-comments.php');  
}

No entanto, a "página de postagens" e uma página de tipos de postagens personalizadas parecem funcionar /wp-admin/edit.php.

Então, estou procurando uma maneira de ocultar a barra de menus das postagens, mas ainda mostrar o menu para um tipo de postagem personalizado que eu adicionei.

Alisso
fonte

Respostas:

11

Ao fazer esta pesquisa , encontrei esta ótima resposta de Chris_O. Existe até uma solução jQuery que propus lá.

De qualquer forma, a função remove_menu_page('edit.php');remove apenas o menu Postagens.

Mas, como aprendemos com a resposta de Chris, remove_menu_page('edit.php?post_type=athletes');remove o menu Tipo de postagem personalizada.

Para realmente bloquear o acesso ao URL, como estamos apenas ocultando o item de menu, verifique as seguintes perguntas e respostas: Bloqueando o acesso administrativo a autores e assinantes?

brasofilo
fonte
1
Obviamente, athletesé o nome do meu Tipo de postagem personalizada ... Ajuste conforme necessário.
brasofilo
Funciona! legal! Obrigado por mostrar como eu poderia ter pesquisado!
Alisso
Posso escolher duas respostas certas?
Alisso
@Alisso Não. Você pode escolher apenas um. Como os dois mostram a mesma solução, em parte, convém escolher um com todos (ou a maioria) os detalhes necessários. :)
its_me
1
Esta função não remove nada, apenas a oculta.
2

Eu apenas tentei e remove_menu_page('edit.php');apenas removo o menu de nível superior de postagens.

Todos os meus outros tipos de postagem personalizados (e eu tenho muito) ainda funcionam bem. Eu tenho a sensação de que isso ocorre porque ele faz uma pesquisa direta da lesma exata, não o nome da base do arquivo.

Tyler Carter
fonte