5

I try to make my first site with GRAV CMS. Now in my pages-folder it looks like this:

  • home/default.md
  • about
  • about/seite1/default.md
  • about/seite2/default.md

Now, if i put the following code into my html-file, only the main points are showed in the navigation.

<nav class="" role="navigation">        
    <div class="">
        <ol class="">
            {% for page in pages.children %}
            {% if page.visible %}
            {% set current_page = (page.active or page.activeChild) ? 'active' : '' %}
            <li class="{{ current_page }}"><a href="{{ page.url }}">{{ page.menu }}</a</li>
            {% endif %}
            {% endfor %}                
        </ol>
    </div>
</nav>

Is there a way to show all the pages, including subpages in the navigation?

thanks for your answer...

Brett DeWoody
  • 59,771
  • 29
  • 135
  • 184
eckstein
  • 117
  • 3
  • 9

1 Answers1

5

This should give you the fist level of children (subpages) in your navigation:

<nav class="" role="navigation">        
    <div class="">
        <ol class="">
            {% for page in pages.children %}
                {% if page.visible %}
                    {% set current_page = (page.active or page.activeChild) ? 'active' : '' %}
                    <li class="{{ current_page }}"><a href="{{ page.url }}">{{ page.menu }}</a></li>
                    {% if page.children %}
                        <ol class="">
                        {% for child in page.children %}
                            {% if child.visible %}
                                <li class="{{ current_page }}"><a href="{{ child.url }}">{{ child.menu }}</a></li>
                            {% endif %}
                        {% endfor %}
                        </ol>
                    {% endif %}
                {% endif %}
            {% endfor %}                
        </ol>
    </div>
</nav>
Sven Rojek
  • 5,476
  • 2
  • 35
  • 57