Mencionáveis

:information_source: Resumo Transforme uma tabela em um tópico em itens pesquisáveis que os membros podem mencionar com +, incluindo links e pré-visualizações onebox.
:hammer_and_wrench: Repositório Discourse Mentionables
:open_book: Guia de instalação Instalar plugins em um site Discourse auto-hospedado
:heart: Patrocínio Por favor, considere patrocinar o desenvolvimento contínuo para ajudar a manter esses plugins atualizados e funcionais no Discourse atual.

Dê à sua comunidade um vocabulário compartilhado para as coisas sobre as quais ela fala: livros,
produtos, projetos, lugares, recursos de suporte ou qualquer outra coisa com uma URL.
Os membros digitam + e parte de um nome, escolhem uma sugestão e obtêm um link legível sem precisar lembrar do endereço.

Escolhendo um recurso compartilhado da autocompletar mentionables

Funcionalidades

  • Comece apenas com URLs. O importador recupera nomes e gera slugs; adicione
    seus próprios nomes e slugs como substituições opcionais.
  • Pesquise enquanto escreve. Digite + ou use o botão da barra de ferramentas do compositor para pesquisar
    seu catálogo. Funciona tanto nos editores Markdown quanto de texto rico.
  • Links inline legíveis. As menções aparecem como pílulas compactas usando o nome de exibição do item, com um slug estável no Markdown da publicação.
  • Oneboxes nativos. Coloque uma menção em sua própria linha para exibir um onebox usando
    os layouts existentes do Discourse e os destinos suportados.
  • Pré-visualizações no desktop. Passe o mouse ou foque em uma pílula inline para abrir uma pré-visualização flutuante
    com um link Abrir página original. Cliques normais abrem o destino.
  • Um catálogo que seus administradores podem editar no Discourse. Importe de uma tabela Markdown
    na primeira publicação de um tópico. Não é necessária conta Google ou credenciais de API.
  • Um botão de tabela para administradores. Insira uma tabela mentionables vazia da
    barra de ferramentas do compositor e depois preencha seus itens.

A aparência do onebox depende do destino e do suporte normal a oneboxes do Discourse.
Destinos não suportados permanecem como links. Cartões flutuantes exigem login;
convidados ainda podem seguir o link de destino. Menções em código são deixadas intactas,
e menções em listas e citações permanecem inline.

Mentionables Básico e a extensão Pro

Mentionables Básico é o plugin base. Pro é um plugin companheiro opcional
instalado ao lado dele; Pro inclui os recursos básicos por meio dessa dependência.

Recurso Mentionables Básico Com extensão Pro
Importar uma tabela Markdown da primeira publicação de um tópico Sim Sim
Manter o tópico fonte em uma categoria restrita Sim Sim
Botão exclusivo para administradores no compositor para inserir um esqueleto de tabela Sim Sim, incluindo colunas de ícone
Pesquisar com + nos editores Markdown e de texto rico Sim Sim
Pílulas de menção inline e oneboxes nativos independentes Sim Sim
Pré-visualizações flutuantes ao passar o mouse ou focar pelo teclado no desktop Sim Sim, no modo padrão de hover
Importar do Google Sheets usando uma conta de serviço — Sim
Selecionar entre tabelas de tópicos e Google Sheets Apenas tabelas de tópicos Sim
Sincronização automática a cada 12 horas — Opcional, desativada por padrão
Importar nomes de ícones e cores HTML opcionais — Sim, de qualquer uma das fontes
Abrir pré-visualizações flutuantes ao clicar ou tocar, incluindo dispositivos touch — Opcional

As colunas icon e icon_colour do Pro adicionam um ícone colorido antes do nome da menção.
Por exemplo, use book e #2563eb para um manual. Com
mentionables_pro_click_to_preview habilitado, clicar ou tocar em uma pílula abre sua
pré-visualização; o link Abrir página original na pré-visualização leva você ao alvo.

Configuração rápida

  1. Instale o plugin base usando o guia de instalação acima. Reconstrua o Discourse
    após a instalação.

  2. Crie um tópico para seu catálogo. Como administrador, use Inserir tabela mentionables
    na barra de ferramentas do compositor ou cole esta tabela na primeira publicação:

    | name               | url                                 | slug               | image_url |
    | ------------------ | ----------------------------------- | ------------------ | --------- |
    | Getting started    | https://example.com/getting-started | getting-started    |           |
    | Community handbook | https://example.com/handbook        | community-handbook |           |
    | Events calendar    | https://example.com/events          | events-calendar    |           |
    
  3. Substitua as URLs de exemplo pelas suas, salve a publicação e defina
    mentionables_topic_id para o ID numérico desse tópico. Mantenha mentionables_enabled
    habilitado. Instalações Pro devem selecionar topic_table em mentionables_source
    para esta configuração.

  4. Abra Admin → Plugins → Mentionables, clique em Iniciar importação e depois
    em Atualizar para inspecionar o relatório. O worker de jobs em segundo plano deve estar em execução.

  5. Recarregue seu navegador, abra um compositor e digite + para testar seus itens.

Use nomes de colunas em minúsculas. Apenas url é obrigatório, começando com http://
ou https://. Linhas com apenas URL recuperam um nome do destino e geram
um slug. Você pode fornecer name, slug ou ambos para substituir esses padrões, misturando
essas opções dentro de uma tabela. Se nenhum título estiver disponível, a URL se torna o
nome de exibição. URLs existentes mantêm seus slugs quando a fonte os omite.
image_url e description são opcionais.

O importador lê a primeira tabela sem aspas com uma coluna url na primeira
publicação. Respostas, tabelas citadas e exemplos de código delimitados são ignorados. Os tópicos fonte
devem ser tópicos regulares, não excluídos, em vez de mensagens pessoais.

Privacidade da fonte e atualização do seu catálogo

Você pode manter o tópico fonte em Staff ou outra categoria restrita para que apenas
pessoas confiáveis possam mantê-lo. Os nomes, URLs e imagens importados estão
disponíveis para usuários de mentionables.
Restringir o tópico não torna o
catálogo importado privado. Mantenha informações confidenciais fora da tabela.

Cada importação sincroniza por URL: URLs correspondentes são atualizadas, novas URLs criam registros
e URLs removidas da fonte deletam registros. A fonte completa deve ser
válida; URLs ou slugs duplicados, linhas inválidas, falhas de recuperação e conjuntos de dados vazios
deixam o catálogo inalterado. Use Excluir tudo para uma limpeza intencional.
Tópicos fonte e planilhas nunca são modificados. A configuração opcional
mentionables_pro_sync_enabled do Pro executa a mesma importação a cada 12 horas.
Recarregue o navegador após importar. Publicações cozidas existentes não são automaticamente
recozidas, e alterar explicitamente um slug pode quebrar referências anteriores +slug.

Configurações e mais informações

Configuração Propósito
mentionables_enabled Habilitar ou desabilitar Mentionables.
mentionables_topic_id Tópico contendo a tabela fonte em sua primeira publicação.
mentionables_autocomplete_limit Número máximo de sugestões; padrão é cinco.
mentionables_onebox_fallback Recuperar também imagens/descrições ausentes quando um nome é fornecido; desativado por padrão.

Veja o README para o guia de configuração completo, comportamento de importação e
solução de problemas. As capturas de tela usam dados de amostra dos fixtures de teste do plugin.

24 curtidas

É possível filtrar tópicos por mencionáveis? Estava pensando em criar um conjunto de dados sobre os estados dos EUA, para que cada post possa estar relacionado a um estado.

No momento não. Como você imagina que o filtro funcionaria em um sentido abstrato? Você pode definir qualquer conjunto de dados externo como um conjunto de mencionáveis. Talvez você possa usar uma coluna adicional nos dados que indique como as postagens com dados de mencionáveis personalizados seriam ordenadas. Então, você também precisaria lidar com situações em que múltiplas menções fossem feitas na mesma postagem. Se você detalhar o recurso de forma abstrata, poderemos ter uma ideia de quanto tempo levaria para implementá-lo.

O nome originalmente era opcional e podia ser derivado das tags og — isso foi perdido durante uma refatoração.

Implementei uma correção: tornar o nome opcional novamente · paviliondev/discourse-mentionables@a7007b2 (github.com)

1 curtida

OK, concluí alguns PRs para isso que colocam as coisas de volta em funcionamento:

Move a API para a API oficial do Google, removendo uma gema intermediária (e algumas outras) e adicionando CI para que as coisas devam ser um pouco mais confiáveis daqui para frente.

Observe as alterações que quebram as configurações:

  • mentionables_google_spreadsheet_url: “URL da planilha do Google”

torna-se:

  • mentionables_google_spreadsheet_id: “ID da planilha do Google”

  • mentionables_google_worksheet_gids: “Restringe a importação da planilha do Google aos GIDs da planilha. Se vazio, todas as planilhas serão importadas.”

torna-se:

  • mentionables_google_worksheet_names: “Nomes das planilhas de origem em escopo (abas)”

E há uma nova configuração:

  • mentionables_google_worksheet_max_row: “Número máximo de linhas escaneadas”

Isso corrige o front-end (enquanto adiciona testes)

3 curtidas

Parece um beco sem saída…

Obrigado por relatar, atualizei o link.

2 curtidas

Por que isso é tão técnico? Nem consigo configurá-lo e fazê-lo funcionar.

Se houvesse um botão de upload para a planilha, ela estaria disponível para um usuário comum como eu.

Ou um editor de formulários online. Isso é, infelizmente, muito avançado.

Concordo parcialmente com você. Este plugin foi realmente construído para um público bastante técnico. Mas apenas a configuração é bastante difícil, depois disso, o oposto.

Na verdade, ele tenta usar um editor familiar, aproveitando o poder do Google Sheets.

Uma vez configurado, qualquer pessoa não técnica pode usar o plugin de uma maneira muito mais fácil do que ter que fazer upload de um arquivo.

Suspeito que não seja adequado para o caso de uso do @frold, que é apresentar um gráfico financeiro renderizado por um site de terceiros. O Mentionables não se destina a esse caso de uso.

se alguém puder me orientar pelo chat, será bem-vindo a entrar em contato comigo.

Não acho seguro compartilhar os códigos no fórum público…

@frold não há código aqui para compartilhar gráficos de terceiros. Este plugin não vai te ajudar. Ele foi projetado puramente para permitir que sites ofereçam aos usuários a capacidade de pesquisar e recuperar de uma lista de produtos como bolhas cinzas que são links para a página de cada produto.

1 curtida

Ok - Pensei que inseriria um link na postagem.

Este URL poderia ser para uma imagem, eu pensei

Ele insere.

Não, é apenas uma descrição chata em uma bolha cinza :sweat_smile:

Uma única captura de tela adicional seria útil aqui, eu acho :slight_smile:

Isso é simplesmente perfeito para conjuntos de links de afiliados.

Atualizei o OP.

2 curtidas

Antes de passar pela configuração e configuração – um caso de uso apropriado para “mentionables” seria na redação de Tópicos que são rascunhos de documentos legais que precisam ser capazes de incluir referências a leis e casos, onde a planilha “mentionables” conectada contém uma coleção de referências legais e jurisprudência relevantes?

1 curtida

Essa parece uma forte possibilidade. Se você tiver fotos bonitas de livros antigos empoeirados, isso ajudaria :wink:

1 curtida

Um dia, eu estava pensando em adicionar trechos alternativos para o mesmo item acessado pressionando + mais vezes.

OK, aqui estão minhas configurações (estou usando a Planilha de Dados de Teste fornecida nas instruções de configuração) e o erro que estou recebendo… (aparentemente o plugin está quebrado e o desenvolvedor exige uma taxa? O que está tudo bem, é claro, apenas para sua informação!)

Qualquer ajuda seria muito apreciada!

Ainda está funcionando, certifique-se de que sua chave privada começa: -----BEGIN PRIVATE KEY---- e termina -----END PRIVATE KEY-----

1 curtida

Não, está funcionando - e é grátis. Por que você pensou isso?

1 curtida