Tagsname come H2

È possibile inserire un’intestazione H2 nell’area dei tag? L’intestazione H2 dovrebbe essere il nome del tag.

Non posso usare il componente banner dei tag perché l’h2 non è a lato della barra laterale destra, è sopra.

Scrivi del codice per ottenere ciò di cui hai bisogno. Qui ho scritto una semplice soluzione per te. Prova, dovrebbe fare quello che vuoi


<script type="text/x-handlebars" data-template-name="/connectors/discovery-list-controls-above/tag-h2">
<h2>
    {{#if h2_tag}}
        {{h2_tag}}
    {{/if}}
</h2>
</script>

<script type="text/discourse-plugin" version="0.8">
api.registerConnectorClass("discovery-list-controls-above", "tag-h2", {
  setupComponent(args, component) {
    if (window.location.pathname?.startsWith("/tag/"))
        component.set("h2_tag", /\/tag\/([^?]+)/.exec(decodeURI(window.location.pathname)).at(1));
  },
});
</script>
2 Mi Piace

Oh grazie mille!! Funziona per il primo tag su cui clicco, ma se passo a un altro tag, l’h2 non cambia.

Oh scusa, questo è il mio problema. Ho apportato alcune modifiche a questo

<script type="text/x-handlebars" data-template-name="/connectors/discovery-list-controls-above/tag-h2">
<h2 >
    {{#if h2_tag}}
        {{h2_tag}}
    {{/if}}
    {{log this}}

</h2>
</script>

<script type="text/discourse-plugin" version="0.8">
api.registerConnectorClass("discovery-list-controls-above", "tag-h2", {
  setupComponent(args, component) {

    function getTagNameFromURL(url) {
        return /\/tag\/([^?]+)/.exec(decodeURI(url)).at(1)
    }

    if (window.location.pathname?.startsWith("/tag/"))
        component.set("h2_tag", getTagNameFromURL(window.location.pathname));
    api.onPageChange(url => component.set("h2_tag", getTagNameFromURL(url)))
  },
});


</script>
1 Mi Piace