Como sobrescrever o arquivo site-header.hbs a partir do tema personalizado?

Estou tentando substituir o site-header.hbs no meu tema personalizado. O caminho no Discourse para esse arquivo é plugins/styleguide/assets/javascripts/discourse/components/sections/organisms/site-header.hbs.

Tentei adicionar no arquivo head_tag.html do meu tema:

<script type="text/x-handlebars" data-template-name="javascripts/components/sections/organisms/site-header">
  <StyleguideExample @title="site header - in topic - scrolled">
    <div class="d-header-wrap">
        test
    </div>
  </StyleguideExample>
</script>

Também tentei várias variações:

<script type="text/x-handlebars" data-template-name="components/sections/organisms/site-header">
<div >test</div>
</script>

<script type="text/x-handlebars" data-template-name="javascripts/components/sections/organisms/site-header">
<div >test</div>
</script>

<script type="text/x-handlebars" data-template-name="javascripts/components/site-header">
<div >test</div>
</script>

<script type="text/x-handlebars" data-template-name="javascripts/components/sections/organisms/site-header">
<div >test</div>
</script>

mas nada ajuda. Você poderia me ajudar, por favor?

1 curtida

Você está tentando fazer outra coisa para a qual acha que substituir o template é a solução. Substituir templates é frágil e provavelmente causará problemas no futuro. O que você está tentando fazer com o cabeçalho que não pode fazer com um plugin outlet?

2 curtidas

@pfaffman obrigado pela sua resposta.
A principal questão é que preciso manter todas as personalizações no tema e não em plugins. Existe outra maneira mais segura de conseguir isso usando o tema personalizado?

Os outlets de plugins são atualizados em temas. Veja Using Plugin Outlet Connectors from a Theme or Plugin

Sim. O que você está tentando fazer?

4 curtidas

@pfaffman Quero remover a exibição do logotipo, adicionar um botão personalizado. E acima do cabeçalho, quero exibir links dinâmicos que virão de um componente personalizado.

Você não deve precisar substituir o hbs para fazer nada disso.

Talvez dê uma olhada em Custom Header Links

Você pode ocultar o logo com CSS.

New Topic Header Button adiciona um botão

Veja também (deprecated) Plugin outlet locations theme component

3 curtidas

@pfaffman obrigado. Entendo totalmente suas sugestões. No entanto, gostaria de saber se há uma maneira de personalizar arquivos, como site-header.hbs, por meio de um tema personalizado. Faz sentido?

Isso não é suportado. Você leu o link que compartilhei com você após sua postagem anterior (duplicada?)\n\nHow to override a template.hbs from a plugin - #7 by merefield

4 curtidas

@merefield Sim, li seu artigo. Eu só queria ter certeza.
Ok, muito obrigado.

2 curtidas

Isso pode ajudar (e garantir que suas personalizações resistam ao teste do tempo)

4 curtidas

Este Theme component também pode ser uma consideração se você estiver procurando por um menu de cabeçalho com submenu suspenso

O benefício de usar um componente existente (especialmente se for oficial ou de um dos parceiros) é que ele provavelmente será mantido com menos chances de quebrar.

3 curtidas

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.