O que “icon” significa nas configurações?
É o nome exato de algum ícone de um site de SVG? Como posso obter o nome exato?
O que “icon” significa nas configurações?
É o nome exato de algum ícone de um site de SVG? Como posso obter o nome exato?
Isso realmente poderia ser uma grande melhoria!
Acho que tenho um problema no meu fórum, pois os ícones estão especificados como brancos, enquanto o fundo da página de categorias também é branco.
Seria possível forçar um fundo diferente aqui, já que ele é usado para subcategorias?
Estou analisando o código e tentando corrigir os seguintes dois problemas, mas estou travado no segundo.
lista de ícones de categoria não é aplicada na visualização de categoria (com Mostrar lista de subcategorias acima dos tópicos nesta categoria)Consegui corrigir este substituindo a linha 112 em header.html
if(iconItem && !attrs.category.parent_category_id) {
por
if (iconItem) {
e adicionando o seguinte código ao common.scss
.subcategory .category-icon-widget {
display: none;
}
bloqueio de categoria ao lado da categoria não muda para o novo SVGVisualização de categorias:
Visualização de categoria (com Mostrar lista de subcategorias acima dos tópicos nesta categoria):
Acho que este é o código relevante:
let classNames = "badge-category clear-badge";
if (restricted) {
classNames += " restricted";
}
...
html +=
`<span ${style} ` +
'data-drop-close="true" class="' +
classNames +
'"' +
(description ? 'title="' + escapeExpression(description) + '" ' : "") +
">";
que adiciona a classe restricted a um <span> com as classes badge-category clear-badge, que controla a exibição do ícone de bloqueio da subcategoria, mas não consigo descobrir como aplicar isso também ao <div> com a classe category-text-title, que controla a exibição do ícone de bloqueio da categoria.
Existe alguma chance de que funcione em breve? Por algum motivo, a visualização de caixas de categorias também não exibe o blob de cor ou o ícone de cadeado, então pode estar fora do controle deste componente…
Ainda não consigo “descobrir” o que está errado com a cor.
Alguém pode me ajudar a identificar onde errei?
E o resultado:
Bug @pmusaraj
Os slugs (e títulos) de subcategorias precisam ser únicos apenas dentro de sua categoria pai.
No entanto, os slugs são usados como chave para encontrar o ícone neste componente.
Assim, se você tiver duas subcategorias sob pais diferentes que possuem o mesmo slug, o ícone será aplicado a ambas.
Para ser honesto, acho que isso é, na verdade, um problema do Discourse, pois os slugs deveriam ser únicos em toda a instância do Discourse, mas não são.
É possível corrigir isso dentro do componente?
Não entendo por que os slugs precisam ser globalmente únicos, já que, pelo que sei, eles nunca têm escopo global. Você pode explicar?
P.S. Vi seu novo tópico que pergunta por que eles não são únicos.
O componente de ícones de categoria, por exemplo, usa o slug para identificar a categoria à qual o ícone deve ser anexado.
Como um administrador ou usuário pode identificar exclusivamente uma subcategoria? Eles precisam usar o caminho categoria-pai-subcategoria? (ou pai-filho-neto quando essa melhoria for lançada). Isso parece um pouco trabalhoso.
É provável que seja possível fazer com que o componente desduplicar subcategorias com o mesmo slug sob diferentes pais, mas isso exigiria alguma maneira de passar o slug da categoria pai nas configurações do componente. Na minha opinião, não seria muito elegante.
Você pode tentar alterar o slug de uma das duas categorias que têm o mesmo slug? Há algum motivo para você não poder fazer isso (apenas o slug precisa ser alterado, não o nome da categoria)?
Sim, parece ser o caminho a seguir, já que os slugs de subcategorias em diferentes categorias pai não precisam ser únicos.
Dito isso, isso pode ser transformado em uma vantagem como um recurso. Por exemplo, se você tiver categorias baseadas em grupos, muitas das quais possuem fóruns de ajuda e anúncios como subcategorias, você pode configurar facilmente um ícone de ajuda comum para todas as categorias de ajuda e um ícone comum para todas as categorias de anúncios usando apenas duas entradas. E qualquer nova subcategoria com a tag de ajuda herdará o ícone automaticamente.
Para o nosso caso de uso, levei isso um passo adiante e realmente tornei isso uma opção para correspondência parcial no slug, de modo que uma entrada “help,question-mark,#000080,false” corresponderia a “sw-help”, “help-forum” e “helpdesk”.
O item adicional “false” no final da entrada indica para não impor uma correspondência exata.
Também tenho a opção de especificar a cor como “catcol”, caso em que o ícone herdará a cor da categoria em vez de usar uma especificada separadamente.
Duas sugestões para inclusão em uma atualização para você.
Acredito que o componente usou correspondência parcial em algum momento, o que confundiu alguns usuários que queriam um ícone para “book” mas não para “booking”. Mas com a opção de ativar/desativar isso por configuração, isso seria ótimo. (Talvez você pudesse usar partial-match em vez de false como o último item, o que seria mais fácil de entender.)
Essa é uma adição legal.
Ficarei feliz em revisar um PR para qualquer uma dessas funcionalidades. Obrigado!
Allow slug partial-match option by rogercreagh · Pull Request #5 · discourse/discourse-category-icons · GitHub foi mesclado, obrigado @rogerco!
Encontrei um pequeno problema com a opção de cor da categoria quando as configurações usam marcadores ou caixas em vez de barras — eu a criei apenas para a opção de barras nas configurações, e ela volta ao cinza nas outras opções. Acredito que isso possa ser resolvido principalmente com CSS, mas ainda não consegui descobrir como. Mas vou conseguir!
Obrigado por este ótimo tema, @pmusaraj! ![]()
Gostaria de usar o ícone de COMENTÁRIOS, mas não sou muito fã da versão sólida. Quando uso comments, recebo a versão sólida. A versão sólida é normalmente fornecida como “fas fa-comments”.
E se eu quiser usar a versão regular, que é normalmente fornecida como “far fa-comments”?
Dentre as variações abaixo, algumas exigem uma assinatura paga. Existe alguma maneira de selecionar diferentes variações ou a versão sólida é a única disponível?
Adicionei ao meu tema, da seguinte forma:
- $icons-sprite: icons8-chat.svg
Como faço agora para adicionar isso às configurações do tema? Eis o que tentei fazer…
Use “far-comments” em ambas as configurações, como neste exemplo:
As versões pagas não estão disponíveis publicamente, então não podemos incluí-las no Discourse. Se a licença permitir, você pode adicioná-las em um sprite SVG personalizado no seu tema. Instruções completas sobre isso estão em Apresentando o Font Awesome 5 e ícones SVG; leia com atenção a seção “Adicionando ícones personalizados”.
Obrigado pela ajuda com isso! Adicionar far-comments em ambas as áreas funcionou perfeitamente!
Você pode dar uma rápida olhada nesta outra pergunta que fiz (em resposta a outro dos seus comentários neste tópico)…
Olá, componente de tema incrível! Estou com dificuldades para adicionar Font Awesome ou fazer upload de ícones usando o upload de ícones-sprite. Só consigo exibir o question-circle. O que estou fazendo de errado? Preciso adicionar código CSS?
Imagens abaixo
E
Os nomes do Font Awesome sempre dizem “não encontrado” e “criar”? Tentei com o nome direto e o prefixo, por exemplo, bullhorn ou fa-bullhorn.
Atualização: consegui fazer o Font Awesome funcionar. Encontrei a opção de ícone SVG nas configurações para adicionar, porém ele não está usando a configuração de cor como o question-circle.
Gostaria de usar ícones SVG personalizados, mas preciso de um guia para iniciantes sobre como fazer isso.
Ao verificar o site no seu perfil, vejo ícones para categorias, então talvez você já tenha resolvido isso? Se não, pela captura de tela acima, acho que você precisa garantir que o arquivo SVG em icons-sprite seja um arquivo de sprite SVG (e não um ícone individual). Mais detalhes em Replace Discourse's default SVG icons with custom icons in a theme