Skip to content

Customizações gerais no Admin do WordPress e Tainacan

Mateus Machado Luna edited this page Aug 12, 2024 · 7 revisions

Vários ajustes são feitos no Painel Administrativo do WordPress tanto para usuários administrativos quanto para gestores de eventos.

Arquivos envolvidos

Funções relevantes

cne_admin_enqueue_styles()

  • É a função do tema responsável por carregar todos os estilos necessários na parte administrativa. Em conjunto com as configurações feitas com o plugin Branda, o /admin.css é responsável por aproximar o painel Administrativo do WordPress da identidade visual do VisiteMuseus;
  • Alguns estilos e scripts são carregados somente para o cenário em que o usuário é Gestor de Eventos:
    • /admin.js: Este é o script que usa os hooks do Tainacan para modificar o formulário de edição de itens do Tainacan. As alterações feitas aqui são:
      • A mudança do redirecionamento de página quando o formulário é concluído na função getTainacanItemEditionRedirect();
      • A inserção do cabeçalho customizado do formulário, com títulos e indicação de status na função tainacanItemEditionItemLoaded();
      • A troca de diversos rótulos usados no Tainacan para usar as terminologias "Instituição" e "Atividade" no lugar de "Item" também na função tainacanItemEditionItemLoaded();
      • A adição de uma Seção de Metadados virtual que representa a área de mídias e a customização das seções de metadado colocando índices antes de cada uma na função tainacanItemEditionItemMetadataLoaded();
      • A remoção do status "Rascunho" das opções de status na função tainacanRemoveDraftFromStatus();
    • /assets/css/icons-tweaks.css: esta folha de estilo altera alguns ícones do Tainacan como os de status por ícones da identidade visual do VisiteMuseus;
    • /assets/css/gestor-admin.css: com esta folha de estilo vários elementos são simplificados, deixados maiores ou reposicionados quando o usuário é Gestor de Eventos nas páginas internas do Admin. Se tratando dos campos de entrada dos formulários, a estilização deles está fortemente dependente dos IDs dos metadados, como por exemplo, fazer o campo de estados ter mais colunas do que taxonomias geralmente tem. Isso significa que quaisquer alterações na modelagem demandam ajustes neste arquivo;

cne_add_welcome_message()

Usando a _action) admin_notices, esta função insere a mensagem de boas vindas com a logo do VisiteMuseus no início da página que lista as instituições no Admin do WordPress;

cne_manage_collections_table_columns()

Usando actions padrão do WordPress, esta função edita as colunas presentes nas tabelas padrão do WordPress que listam Instituições ou Atividades.

  • São adicionados os botões de "Cadastrar nova atividade" na lista de Instituições;

cne_list_collections_in_admin()

Esta função usa o filtro register_post_type_args para alterar alguns comportamentos padrão dos tipos de posts do Tainacan;

  • Rótulos são alterados para se trocar "Item" por "Instituição" ou "Atividades" em diversos locais da interface;
  • As instituições passam a ser listadas no admin do WordPress;
  • A funcionalidade de "edição em linha" é desabilitada em mais tipos de post;

cne_collection_add_new_post() e cne_instituicoes_collection_add_new_post_menu()

Usando respectivamente o filtro admin_url e admin_menu, estas funções redirecionam os links de criar novo post dos tipos do Tainacan para fazê-los cair no Admin do Tainacan;

cne_collection_edit_post_link()

Utilizando o filtro get_edit_post_link, os links para edição dos posts presentes nas tabelas padrão do WordPress são atualizados para caírem ou na página do Tainacan ou na página do Admin da Instituição;

cne_add_collections_to_toolbar()

Usa a action admin_bar_menu para adicionar links no cabeçalho do admin que facilitem a navegação entre Instituições e Atividades. Nesta função é checado se o usuário cadastrou apenas uma instituição para que neste caso seja fornecido um link imediato para a página daquela instituição no admin.

Outras funções

  • cne_remove_quick_edit(): Remove a funcionalidade de "edição em linha" de itens nas tabelas;
  • cne_add_jfif_files(): Habilita a possibilidade de se enviar arquivos do formato JFIF no WordPress;
Clone this wiki locally