| Resumo | Criar menus de barra lateral personalizados para grupos selecionados | |
| Visualização | Junte-se a este grupo de Criadores de Temas e depois visualize aqui | |
| Repositório | https://github.com/Lillinator/discourse-group-sidebar-menus | |
| Guia de Instalação | Como instalar um tema ou componente de tema |
Instale este componente de tema
Visão Geral
Este componente de tema do Discourse oferece aos administradores do fórum a capacidade de criar menus de barra lateral personalizados que são acessíveis apenas aos membros de grupos selecionados.
Principais Recursos:
- Visibilidade do menu baseada em grupos - As seções do menu são renderizadas na barra lateral apenas para usuários autorizados
- Configuração baseada em objetos - Interface de configurações fácil de usar para criar menus
- Múltiplas seções - Crie seções de menu ilimitadas para diferentes grupos (dentro do razoável)
- Link de edição rápida para administradores - O ícone de lápis nos cabeçalhos do menu leva os administradores diretamente às configurações do componente
Alguns Casos de Uso
- Recursos e links rápidos apenas para funcionários
- Atalhos para moderadores de categorias
- Portais personalizados para grupos (equipes de projetos, grupos de estudo, clubes de livros, membros VIP)
- Links para recursos de sites principais ou parceiros
Configurações
Seções de Menu (menu_sections)
Abre o editor de configurações de objetos para configurar seções de menu de grupo personalizadas.
Propriedades da Seção
| Propriedade | Descrição |
|---|---|
| Título do Menu | Título exibido como o cabeçalho da seção da barra lateral |
| Grupos Permitidos | Grupos autorizados a visualizar esta seção do menu (máximo: 20 grupos por seção) |
| Links do Menu | Coleção de links para exibir nesta seção (máximo: 20 links por seção) |
Propriedades do Link
| Propriedade | Descrição |
|---|---|
| Ícone | Nome do ícone FontAwesome (por exemplo, circle-info, star, user-group). Pode ser necessário adicioná-lo em Admin > Todas as configurações do site > subconjunto de ícones svg |
| Texto | Rótulo de exibição para o link |
| URL | Destino do link - suporta caminhos relativos (/faq, /my/preferences) e URLs absolutas (https://example.com) |
Instalação e Configuração
- Instale o componente de tema conforme Installing a theme or theme component.
- Vá para o
Editor de configurações de objetos - Clique no botão
+ new_menu_sectionpara configurar a primeira seção de menu personalizada - Dê um título ao novo menu no campo
Título do Menue, em seguida, selecione os grupos que devem ter acesso a ele. - Clique em
+ new_menu_sectionpara adicionar outra seção ou Salvar alterações.
Capturas de tela de configuração do administrador com exemplo de configuração
Instalação nova - vá para o Editor de configurações de objetos.
Cenário de exemplo com 2 menus personalizados e 3 usuários, sendo um administrador:
@Catraama gatos e é membro do grupopink, que terá acesso aoMenu de Gatos@HelloKittygosta de cachorros e é membro do grupopurple, que terá acesso aoMenu de Cachorros@Lillyé membro do grupopurpleporque ela tem um cachorro e cachorros são melhores. No entanto, ela também é administradora do fórum, e as administradoras terão acesso aoMenu de Gatosporque gatos precisam de mais supervisão![]()
Crie um novo menu personalizado - para nosso exemplo, crie o Menu de Gatos e adicione os grupos autorizados a ter acesso a ele - pink e admins. Em seguida, clique no botão + menu_link para configurar os links do novo menu.
Adicione alguns links de menu - 1. nome do ícone Fontawesome, 2. texto para exibir o link e 3. a URL, relativa ou absoluta. Clique no botão + menu_link para adicionar outro link a este menu.
Crie outra seção de menu personalizada chamada Menu de Cachorros, dê acesso apenas ao grupo purple e configure os links:
Capturas de tela do acesso resultante à barra lateral
O usuário @Catra tem o Menu de Gatos! ![]()
O usuário @HelloKitty tem o Menu de Cachorros! ![]()
O usuário administrador @Lilly tem ambos os menus e pode editá-los! ![]()
Exemplo de Configuração
Título do Menu: "Coisas de Gatos"
Grupos Permitidos: team-cat
Links:
- Ícone: link
Texto: Vídeos e fotos de gatos
URL: /t/cat-videos-and-photos/123
- Ícone: magnifying-glass
Texto: Wiki de gatos
URL: https://en.wikipedia.org/wiki/Cat
Notas Importantes
Acesso de Administrador
Os administradores devem se adicionar aos grupos para ver menus configurados para esses grupos. O status de administrador por si só não concede acesso a todos os menus personalizados. Isso é intencional! Além disso, administradores que pertencem aos grupos permitidos de um menu verão um ícone de lápis no cabeçalho da seção que leva às configurações do componente.
Configuração de Grupo
- O grupo
everyonenão é suportado - Use a interface nativa do rodapé da barra lateral para criar menus personalizados globais para todos os usuários, incluindo visitantes anônimos. - Máximo de 20 grupos por seção de menu. Se você precisar de mais, crie seções duplicadas com atribuições de grupo diferentes.
- Usuários em vários grupos verão todas as seções de menu às quais têm acesso.
Testes e Organização
Use contas de teste para verificar o acesso correto para diferentes combinações de grupos. Mantenha o controle de suas configurações de menu para evitar confusão à medida que a complexidade aumenta; uma matriz de acesso ou documentação semelhante é recomendada para fóruns maiores com muitos grupos.
Considerações de Segurança
Este componente fornece controle de acesso apenas no nível da interface do usuário. Ele controla a visibilidade do menu, não o acesso aos recursos - este componente controla apenas o que é renderizado na barra lateral, não quem pode acessar os recursos reais.
Dependa sempre do sistema de permissões integrado do Discourse para proteger recursos reais:
- Configure as permissões de categoria corretamente
- Defina restrições de visibilidade de tópicos
- Use controles de acesso baseados em grupo para conteúdo
- Garanta que recursos privados exijam autenticação
Boa prática para administradores:
Configure as permissões de segurança de categorias vinculadas e a filiação a grupos separadamente - por exemplo: um link de menu para uma categoria privada deve ter as permissões dessa categoria configuradas corretamente. Os administradores são responsáveis por garantir que os links para recursos externos sejam autorizados adequadamente para os grupos selecionados.
Este foi um projeto colaborativo com @Moin - sua contribuição, inspiração e feedback foram inestimáveis.
Confira meus outros materiais do Discourse








