質問

標準テンプレートのページ上部にあるナビゲーションリンクのセットをカスタマイズできることを知っています._site_navigation_tabsブロックをオーバーライドすることによって、[DataHub.IOカスタマイズ]( https://github.com/okfn/ckanext-datahub/blob/3d64748fc1f3c4499780b199315/ckanext/datahub/templates/header.html#l9

{% block header_site_navigation_tabs %}
        {{ h.build_nav_main(
          ('search', _('Datasets')),
          ('organizations_index', _('Organizations')),
          ('about', _('About'))
        ) }}
{% endblock %}
.

しかし、このリストへのリンクを外部のWebサイトに追加したいですか?私はただやることができます(最後の追加のエントリーを参照):

{% block header_site_navigation_tabs %}
        {{ h.build_nav_main(
          ('search', _('Datasets')),
          ('organizations_index', _('Organizations')),
          ('about', _('About'))
          ('http://blog.datahub.io/', 'Blog')
        ) }}
{% endblock %}
.

役に立ちましたか?

解決

いいえ、それはできません。ヘルパーメソッドは内部的に宣言されたルート(config['routes.named_routes'])を探します。ただし、LI要素を追加するだけで、ブロック全体がこの

のように見えることができます。
{% 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 %}
.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top