| Resumo | Crie menus de barra lateral personalizados com acesso restrito a grupos selecionados | |
| Pré-visualização | Junte-se a este grupo do Criador de Temas e depois pré-visualize aqui | |
| Repositório | \u003chttps://github.com/Lillinator/discourse-group-sidebar-menus\u003e | |
| Guia de Instalação | Como instalar um tema ou componente de tema | |
| Novo em Temas do Discourse? | Guia para iniciantes sobre como usar Temas do Discourse |
Instalar 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:
- Controle de acesso baseado em grupo - As seções do menu são renderizadas apenas para usuários autorizados
- Configuração da UI de administração - Todas as configurações para criar seções de menu de grupo estão na UI de administração do componente de tema
- Múltiplas seções - Crie um número ilimitado de seções de menu para diferentes grupos (dentro do razoável)
- Segurança do lado do cliente - Usuários não autorizados não podem ver seções de menu no DOM, inspetor da web ou modo seguro
- Sem poluição global - Não requer a criação de seções de barra lateral globais
- Link de edição rápida para administrador - O ícone de lápis nos cabeçalhos do menu direciona os administradores diretamente para as configurações do componente
Casos de Uso
- Recursos e links rápidos apenas para a equipe
- Atalhos do moderador de categoria
- Portais de grupo personalizados (equipes de projeto, grupos de estudo, clubes do livro, membros VIP)
- Links para recursos de sites parceiros ou principais
Configurações
Seções de Menu (menu_sections)
Abre o editor de configurações de objeto 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áx: 20 grupos por seção) |
| Links do menu | Coleção de links para exibir nesta seção (máx: 20 links por seção) |
Propriedades do Link
| Propriedade | Descrição |
|---|---|
| Ícone | Nome do ícone FontAwesome (ex: circle-info, star, user-group). Pode precisar ser adicionado em Admin \u003e Todas as configurações do site \u003e 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 terão acesso a ele. - Clique em
+ new_menu_sectionpara adicionar outra seção ou Salve as alterações.
Capturas de tela de configuração do administrador com configuração de exemplo
Instalação nova - vá para o Editor de configurações de Objetos.
\u003e #### Cenário de exemplo com 2 menus personalizados e 3 usuários, um deles administrador:
\u003e * @Catra adora gatos e é membro do grupo pink, que terá acesso ao Menu de Gatos ![]()
\u003e * @HelloKitty gosta de cachorros e é membro do grupo purple, que terá acesso ao Menu de Cachorros ![]()
\u003e * @Lilly é membro do grupo purple porque ela tem um cachorro e cachorros são melhores. No entanto, ela também é administradora do fórum, e administradores terão acesso ao Menu de Gatos porque gatos precisam de mais supervisão
![]()
Crie um novo menu personalizado - para nosso exemplo, crie 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 para o novo menu.
Adicione os links do menu - 1. Nome do ícone Fontawesome, 2. texto a ser exibido para 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 ao menu da barra lateral
O usuário @Catra tem o Menu de Gatos! ![]()
O usuário @HelloKitty tem o Menu de Cachorros! ![]()
A usuária administradora @Lilly tem ambos os menus e pode editá-los! ![]()
Exemplo de Configuração
Título do Menu: "Recursos da Equipe"
Grupos Permitidos: staff
Links:
- Ícone: wrench
Texto: Guia de Moderação
URL: /t/moderation-guide/123
- Ícone: chart-line
Texto: Painel de Análise
URL: /admin/dashboard
Observações Importantes
Acesso de Administrador
- Administradores devem se adicionar aos grupos para ver os menus configurados para esses grupos. O status de administrador por si só não concede acesso a todos os menus personalizados. Isso é intencional!
- 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 UI 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 precisar de mais, crie seções duplicadas com diferentes atribuições de grupo.
- Usuários em vários grupos verão todas as seções de menu às quais têm acesso.
Teste e Organização
- Use contas de teste para verificar o acesso correto para diferentes combinações de grupos.
- Mantenha um registro 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 no nível da UI. Ele controla o acesso ao menu, não o acesso ao recurso - não é um substituto para as permissões de segurança de categoria.
O que este componente protege:
Seções de menu não podem ser acessadas por grupos de usuários não autorizados
Links não detectáveis via inspetor/console/modo seguro
UX limpa sem desordem no menu
Melhores práticas do administrador:
- Configure as permissões de segurança de qualquer categoria vinculada e a associação de grupo relevante separadamente antes de configurar este componente - planeje sua configuração.
- Os administradores são responsáveis por garantir que os links para recursos externos sejam devidamente autorizados para os grupos selecionados.
Outras Observações 
- Este componente é compatível com Discourse Sidebar Menu Reorder, que foi usado para colocar as duas seções de menu de exemplo nas capturas de tela no topo da barra lateral. Basta usar o título da seção de menu personalizada no formato de slug, por exemplo,
cat-menu. - Este foi um projeto colaborativo com @Moin - sua contribuição, inspiração e feedback foram inestimáveis.







