Filtro de Cartão Discourse Docs

:discourse2: Resumo Discourse Docs Card Filter deve ser usado com o Plugin Discourse Docs e permite que você coloque “Cartões” que funcionam como um filtro clicável para resultados de filtragem mais rápidos ao acessar a página /docs por seus usuários.
:eyeglasses: Pré-visualização Pré-visualizar no Discourse Theme Creator
:hammer_and_wrench: Link do Repositório https://github.com/discourse/discourse-docs-card-filter
:open_book: Novo em Temas do Discourse? Guia para iniciantes sobre o uso de Temas do Discourse

Instale este componente de tema

Recursos

O acima seria renderizado com essas configurações no plugin docs:

Configurações

Você pode selecionar ícones personalizados para cada filtro de cartão de categoria ou tag. Você também pode permitir que as descrições de categoria sejam renderizadas nos filtros de cartão de categoria.

Nome Descrição
category icons Escolha ícones e ordem dos tópicos para os IDs de categoria correspondentes. Ex. ‘6,heart,title-asc’ atribuiria o ícone de coração à categoria 6 e ordenaria a lista de tópicos por atividade crescente. OBS: a ordem pode ser (title,activity)-(asc/desc)
category description Ativa a exibição da descrição da categoria nos filtros de cartão de categoria para a página de docs.
tag icons Escolha ícones e ordem dos tópicos para os slugs de tag correspondentes. Ex. ‘featured,heart,activity-desc’ atribuiria o ícone de coração à tag featured e ordenaria a lista de tópicos por atividade crescente. OBS: a ordem pode ser (title,activity)-(asc/desc)
Tradução Padrão
topics Tópicos
topic Tópico

:discourse2: Hospedado por nós? Componentes de tema estão disponíveis para uso em nossos planos Standard, Business e Enterprise.

33 curtidas

Obrigado por criar isso! É correto que, se um usuário não tiver permissão de visualização em uma categoria (privada), o cartão dessa categoria privada não aparecerá acima da caixa de pesquisa? (Ou, supostamente, na barra lateral, mas só quero confirmar que o comportamento é consistente.)

1 curtida

Isso deve ser o caso, pois estamos obtendo as informações da categoria a partir de

@discourseComputed("category")
  categoryInfo(category) {
    return this.site.categories.findBy("id", category.id);
  },

Até onde eu sei, this.site.categories retornará apenas aquelas que o usuário atual pode visualizar.

2 curtidas

Excelente. Isso tornará a ferramenta realmente fácil de usar para as pessoas em nossos vários grupos de trabalho que desejam acesso rápido aos materiais de referência de seus grupos e filtrar rapidamente o Grupo A do Grupo B, etc. Obrigado!

3 curtidas

É possível que o contador em /docs não conte tópicos movidos para aquela categoria após ela já ter sido criada?

Acabei de criar uma nova categoria, adicionei-a em docs, movi alguns tópicos, mas o contador ainda diz “0 tópico”.

EDIT: parece que leva um tempo para atualizar.

Existe uma maneira de alterar a ordem de classificação dos cartões, mesmo que isso exija a modificação do código? Eu gostaria que fosse alfabética em vez de por contagem de tópicos. Obrigado!

1 curtida

Olá a todos. Docs e esta extensão de Docs são fantásticos. Só uma coisa. Alguém pode me ajudar a adicionar esses cartões às seções top_menu ou homepage? Seria ótimo ter uma página inicial padrão com ‘Mais recentes’ por padrão, mas com esses cartões no topo. Então, clicar em um cartão levaria para a página de Docs filtrada.

Além disso, tenho outro plugin (Caixa de pesquisa) na seção top_menu. Não consegui descobrir como mudar a ordem se vários plugins estiverem aparecendo nesta seção.

Obrigado.

3 curtidas

Olá @jordan.vidrine

Tentamos o tc e ele funciona muito bem para o seu caso de uso. Agora podemos criar uma base de conhecimento (KB).

Neste contexto, tenho uma pergunta: você pode sugerir alguma solução alternativa para adicionar alguns parâmetros a cada cartão de categoria ou tag? Dessa forma, gostaríamos de anexar &order=title para afetar a classificação de cada cartão de categoria ou tag individual.

PS:

Hmm.. Não tenho certeza.

Como você gostaria que a ordenação dos cards de categoria e tag aparecesse?

Olá Jordan

Poderíamos adicionar um parâmetro de ordenação na configuração do tema ícones de categoria. Por exemplo, no caso de 6,heart, podemos adicionar um comando de ordenação adicional, por exemplo, para ordenar por título do tópico ascendente, seria 6,heart,title-asc.

Ao abrir o cartão da categoria, ele apenas anexaria os parâmetros de documentação, como: /docs?ascending=true&category=71&order=title

O que você acha disso?

1 curtida

Embora seja possível que isso funcione bem em um site, sem muito feedback sobre este tópico focado na capacidade de classificar os cartões, não sinto necessariamente que o tempo gasto para fazer isso funcionar corretamente seja atualmente justificado.

Dito isso, encorajamos PRs em componentes, bem como a criação de forks de um componente para usá-lo da sua maneira!

Sinta-se à vontade para fazer um PR com esta funcionalidade, ou criar um fork para desenvolvê-la para si mesmo.

3 curtidas

Posso fazer um PR para esta solicitação, pois @jrgong está patrocinando o trabalho.

4 curtidas

Aumentando este tópico! Alguém conseguiu descobrir?

2 curtidas

Minha solução foi desativar os cartões (já que tenho muitas categorias para torná-los úteis de qualquer maneira) e modificar a ordem de classificação dos Docs. Você pode ver mais sobre isso aqui Modifying Discourse Docs to only allow for sorting by Title - #2 by Nick_Chomey

2 curtidas

Nós definitivamente aceitamos PRs benéficos para nossos componentes!

Se você fosse adicionar a capacidade de classificar esses cartões, eu sugeriria criar uma nova lista de valores onde você pode colocar a ordem dos cartões por ID de categoria e ID de tag. Eu não os adicionaria a uma lista de valores já existente para algo não relacionado.

:smile:

1 curtida

@jordan.vidrine Obrigado por projetar o ótimo componente. Existe alguma maneira de desabilitar o componente em dispositivos móveis, mas mostrá-lo em PC/Mac?

Entendido. Mas você poderia pelo menos mudar a configuração de ícones de categoria para lista de valores? É muito mais fácil gerenciar os cards em vários campos de texto em vez de um único. ;)\n\nE como uma solução alternativa temporária, seria super útil se cada card de documentação tivesse uma classe CSS com o respectivo slug da categoria ou tag.\n\nAntes: \u003ca class=\"docs-card-box category-card\"\u003e\nDepois: \u003ca class=\"docs-card-box [category-slug] category-card\"\u003e

1 curtida

Esta é uma boa sugestão :+1:

2 curtidas

Me avise se precisar de ajuda com testes, ficarei feliz em ser o rato de laboratório :slight_smile:

1 curtida

Depois de pensar melhor, decidi não alterar a configuração de ícones de categoria para uma lista de valores, pois sem uma opção de fallback, isso quebraria os componentes dos usuários atuais.

Adicionar um fallback seria verificar se o usuário definiu os ícones no campo atual ou no novo campo lista de valores, e acho que isso é muito complicado de adicionar a este componente, pois adicionaria outro nível de configurações e causaria possível confusão.

Quanto às adições de classe, é uma ótima ideia, mas não tenho um cronograma para quando isso será adicionado, pois há coisas mais pertinentes que precisam da minha atenção.

Dito isso, quando possível, também recebemos PRs para nossos componentes, afinal, somos open source!

1 curtida