Remover traços dos nomes das tags

:discourse2: Resumo Remover hífens (-) dos nomes das tags na Lista de Tópicos e na página do Tópico
:eyeglasses: Pré-visualização Pré-visualização no Discourse Theme Creator
:hammer_and_wrench: Repositório https://github.com/discourse/discourse-remove-dashes-from-tag-names
:open_book: Novo nos Temas do Discourse? Guia para iniciantes sobre como usar Temas do Discourse

Instalar este componente de tema

Recursos

Este componente de tema remove os hífens dos nomes das tags onde quer que sejam exibidos na interface do usuário.

Como o Discourse substitui os espaços nos nomes das tags por hífens, este componente de tema é útil para alterar visualmente de volta hífenespaço na exibição.


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

14 curtidas

7 posts foram divididos em um novo tópico: Hifens não removidos das tags da barra lateral

Obrigado pelo seu componente,
Remover o traço da barra lateral de Tags está OK, e quanto à Tag de título?
%{filter} %{tag} %{category}

Obrigado por isso. Eu nunca consegui entender os hifens ali :smiley:


O componente de tema atual ainda perde muitas posições onde o hífen do nome da tag não pode ser removido, especialmente o título do site para ser amigável ao Google. Você pode atualizá-lo?

1 curtida

Ao habilitar este componente de tema, ele também remove os ícones de tags das tags. Portanto, há um pequeno conflito com este componente: Tag Icons

Além disso, como dito antes, ele não remove esses traços irritantes em alguns lugares.

1 curtida

Este script substitui este componente por enquanto

function replaceTextNodes(node) {
    node.childNodes.forEach(child => {
      if (child.nodeType === Node.TEXT_NODE) {
        child.textContent = child.textContent
          .replace(/-E-/gi, ' & ')
          .replace(/-/g, ' ');
      } else {
        replaceTextNodes(child);
      }
    });
  }

  api.onPageChange(() => {

    document.querySelectorAll('.discourse-tag.box').forEach(tag => {
      replaceTextNodes(tag);
    });
    
    document.querySelectorAll('#sidebar-section-content-tags .sidebar-section-link-content-text').forEach(tag => {
      replaceTextNodes(tag);
    });
  });
1 curtida

Gostaria de registrar isto também, com um pedido para atualizar este componente para interoperabilidade. O script do Sammy funciona bem o suficiente para que possa ser enviado como um PR e otimizado para inclusão.