微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何添加不同的导航菜单来shopify Debut 主题?

如何解决如何添加不同的导航菜单来shopify Debut 主题?

所以我试图为不同的客户创建不同的导航菜单。因此,当我在 shopify(例如批发)中为客户提供特定标签时,他会看到与其他访问者不同的另一个菜单栏。只有在他登录他的帐户后才会发生这种情况。

现在我试图找到以下代码段: {% for link in linklists.main-menu.links %}

将其替换为以下代码

{% assign menu_handle = 'main-menu' %}
{% if customer %} 
{% if customer.tags contains 'wholesale' %} 
{% assign menu_handle = 'main-menu-wholesale' %} 
{% endif %} 
{% endif %} 
{% for link in linklists[menu_handle].links %}

但我在最初的代码中找不到像这样的代码片段:

{% comment %}
Renders a list of menu items
Accepts:
- linklist: {Object} Linklist Liquid object (required)
- wrapper_class: {String} CSS wrapper class for the navigation (optional)

Usage:
{% include 'site-nav',linklist: section.settings.main_linklist,wrapper_class: 'site-nav--centered' %}
{% endcomment %}
<ul class="site-nav list--inline{% if wrapper_class != blank %} {{ wrapper_class }}{% endif %}" id="SiteNav">
{% for link in linklists[linklist].links %}
{%- assign child_list_handle = link.title | handleize -%}

{% comment %}
  Check if third-level nav exists on each parent link.
{% endcomment %}
{%- assign three_level_nav = false -%}
{% if link.links != blank %}
  {% if link.levels == 2 %}
    {%- assign three_level_nav = true -%}
  {% endif %}
{% endif %}

{% if link.links != blank %}
  <li class="site-nav--has-dropdown{% if three_level_nav %} site-nav--has-centered-dropdown{% endif %}{% if link.active %} site-nav--active{% endif %}" data-has-dropdowns>
    <button class="site-nav__link site-nav__link--main site-nav__link--button{% if link.child_active %} site-nav__link--active{% endif %}" type="button" aria-expanded="false" aria-controls="SiteNavLabel-{{ child_list_handle }}">
      <span class="site-nav__label">{{ link.title | escape }}</span>{% include 'icon-chevron-down' %}
    </button>

    <div class="site-nav__dropdown{% if three_level_nav %} site-nav__dropdown--centered{% endif %} critical-hidden" id="SiteNavLabel-{{ child_list_handle }}">
      {% if three_level_nav %}
        <div class="site-nav__childlist">
          <ul class="site-nav__childlist-grid">
            {% if link.links != blank %}
              {% for childlink in link.links %}
                <li class="site-nav__childlist-item">
                  <a href="{{ childlink.url }}"
                    class="site-nav__link site-nav__child-link site-nav__child-link--parent"
                    {% if childlink.current %} aria-current="page"{% endif %}
                  >
                    <span class="site-nav__label">{{ childlink.title | escape }}</span>
                  </a>

                  {% if childlink.links != blank %}
                    <ul>
                    {% for grandchildlink in childlink.links %}
                      <li>
                        <a href="{{ grandchildlink.url }}"
                        class="site-nav__link site-nav__child-link"
                        {% if grandchildlink.current %} aria-current="page"{% endif %}
                      >
                          <span class="site-nav__label">{{ grandchildlink.title | escape }}</span>
                        </a>
                      </li>
                    {% endfor %}
                    </ul>
                  {% endif %}

                </li>
              {% endfor %}
            {% endif %}
          </ul>
        </div>

      {% else %}
        <ul>
          {% for childlink in link.links %}
            <li>
              <a href="{{ childlink.url }}"
              class="site-nav__link site-nav__child-link{% if forloop.last %} site-nav__link--last{% endif %}"
              {% if childlink.current %} aria-current="page"{% endif %}
            >
                <span class="site-nav__label">{{ childlink.title | escape }}</span>
              </a>
            </li>
          {% endfor %}
        </ul>
      {% endif %}
    </div>
  </li>
{% else %}
  <li {% if link.active %} class="site-nav--active"{% endif %}>
    <a href="{{ link.url }}"
      class="site-nav__link site-nav__link--main{% if link.active %} site-nav__link--active{% endif %}"
      {% if link.current %} aria-current="page"{% endif %}
    >
      <span class="site-nav__label">{{ link.title | escape }}</span>
    </a>
  </li>
{% endif %}
{% endfor %}
</ul>

还有其他方法可以将此代码片段添加到首次亮相的代码中吗?这段代码会是什么样子?

感谢每一个提示

解决方法

我认为你需要找到这个代码{% include 'site-nav',linklist: section.settings.main_linklist,wrapper_class: 'site-nav--centered' %}

更改后,您的代码看起来像

{% assign menu_handle = 'main-menu' %}
{% if customer %} 
  {% if customer.tags contains 'wholesale' %} 
    {% assign menu_handle = 'main-menu-wholesale' %} 
  {% endif %} 
{% endif %} 

{% include 'site-nav',linklist: menu_handle,wrapper_class: 'site-nav--centered' %}

更新:在这里,我正在更改首次亮相主题最新版本的菜单列表。

  1. header.liquid 文件中,我进行了更新并添加了用于检查客户和客户标签(如果客户已登录且标签包含 wholesale)的代码段。 enter image description here

  2. 注册为新用户,并从管理员后台为新用户帐户分配标签 wholesaleenter image description here

  3. 这里是未登录用户的前端,并以批发标记客户的身份登录。 enter image description here

enter image description here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。