Como faço para adicionar um link para um site externo, o principal barra de navegação no CKAN
-
21-12-2019 - |
Pergunta
Eu sei que eu posso personalizar o conjunto de links de navegação no topo da página, no modelo padrão, substituindo o header_site_navigation_tabs bloco e.como em [datahub.io de personalização](https://github.com/okfn/ckanext-datahub/blob/3d64748fc1f3c4499780b199e971a5929ba69315/ckanext/datahub/templates/header.html#L9 )
{% block header_site_navigation_tabs %}
{{ h.build_nav_main(
('search', _('Datasets')),
('organizations_index', _('Organizations')),
('about', _('About'))
) }}
{% endblock %}
No entanto, eu quero adicionar um link para esta lista para um site externo?Posso apenas fazer (ver entrada extra no final):
{% block header_site_navigation_tabs %}
{{ h.build_nav_main(
('search', _('Datasets')),
('organizations_index', _('Organizations')),
('about', _('About'))
('http://blog.datahub.io/', 'Blog')
) }}
{% endblock %}
Solução
Não, você não pode fazer isso.O método auxiliar procura por rotas declarada internamente (config['routes.named_routes']
).No entanto, você pode simplesmente adicionar um elemento do li, então, todo o bloco teria esta aparência
{% block header_site_navigation %}
<nav class="section navigation">
<ul class="nav nav-pills">
{% block header_site_navigation_tabs %}
{{ h.build_nav_main(
('search', _('Datasets')),
('organizations_index', _('Organizations')),
('about', _('About'))
) }}
<li><a href="http://blog.datahub.io">Blog</a></li>
{% endblock %}
</ul>
</nav>
{% endblock %}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow