Sitemap page

While Neto automatically generates sitemaps and submits them to Google, some customers like to also have a sitemap page which is visible to customers.

The code snippet below is an example of how you could make a sitemap page. You may need to tweak it to ensure it suits your content structure.


Preparation Checklist

Before you start this tweak, it's a good idea to run through our preparation checklist below:

  • Read through the Getting Started Guide to get a better sense of how the Control Panel, Database and Front End store interact.
  • Learn our recommended Simple Workflow. This makes the implementation process as easy as possible.
  • Create a new Staging Theme for this tweak. This allows you to preview any changes before they are visible to live customers.

Coding Instructions

Step 1: Create a new template

Navigate to the cms folder /httpdocs/assets/themes/[THEME-NAME]/templates/cms and create a new file named sitemap.template.html.

Step 2: Add the code to the template

Paste the following code into the newly created sitemap template:

<div class="col-12">
    <h1 class="display-4">[%url_info name:'page_heading' default:'[@content_name@]'/%]</h1>
    <ul>
        [%content_menu content_type:'category' limit:''%]
            [%param header%]
                <li>Categories
                    <ul>
            [%/param%]
            [%param *level_1%]
                        <li><a href="[@url@]">[@name@]</a>
                        [%if [@next_level@]%]
                            <ul>[@next_level@]</ul>
                        [%/if%]
            [%/param%]
            [%param *level_2%]
                        <li><a href="[@url@]">[@name@]</a>
                        [%if [@next_level@]%]
                            <ul>[@next_level@]</ul>
                        [%/if%]
            [%/param%]
            [%param *level_3%]
                        <li><a href="[@url@]">[@name@]</a>
                        [%if [@next_level@]%]
                            <ul>[@next_level@]</ul>
                        [%/if%]
            [%/param%]
            [%param *level_4%]
                        <li><a href="[@url@]">[@name@]</a>
                        [%if [@next_level@]%]
                            <ul>[@next_level@]</ul>
                        [%/if%]
            [%/param%]
            [%param *level_5%]
                        <li><a href="[@url@]">[@name@]</a>
                        [%if [@next_level@]%]
                            <ul>[@next_level@]</ul>
                        [%/if%]
            [%/param%]
            [%param *level_6%]
                        <li><a href="[@url@]">[@name@]</a>
                        [%if [@next_level@]%]
                            <ul>[@next_level@]</ul>
                        [%/if%]
            [%/param%]
            [%param *level_7%]
                        <li><a href="[@url@]">[@name@]</a>
                        [%if [@next_level@]%]
                            <ul>[@next_level@]</ul>
                        [%/if%]
            [%/param%]
            [%param footer%]
                    </ul>
                </li>
            [%/param%]
        [%/content_menu%]

        [%content_menu type:'page' limit:''%]
            [%param header%]
                <li>Content Pages
                    <ul>
            [%/param%]
            [%param *level_1%]
                        <li><a href="[@url@]">[@name@]</a>
                        [%if [@next_level@]%]
                            <ul>[@next_level@]</ul>
                        [%/if%]
            [%/param%]
            [%param *level_2%]
                        <li><a href="[@url@]">[@name@]</a>
                        [%if [@next_level@]%]
                            <ul>[@next_level@]</ul>
                        [%/if%]
            [%/param%]
            [%param *level_3%]
                        <li><a href="[@url@]">[@name@]</a>
                        [%if [@next_level@]%]
                            <ul>[@next_level@]</ul>
                        [%/if%]
            [%/param%]
            [%param *level_4%]
                        <li><a href="[@url@]">[@name@]</a>
                        [%if [@next_level@]%]
                            <ul>[@next_level@]</ul>
                        [%/if%]
            [%/param%]
            [%param *level_5%]
                        <li><a href="[@url@]">[@name@]</a>
                        [%if [@next_level@]%]
                            <ul>[@next_level@]</ul>
                        [%/if%]
            [%/param%]
            [%param *level_6%]
                        <li><a href="[@url@]">[@name@]</a>
                        [%if [@next_level@]%]
                            <ul>[@next_level@]</ul>
                        [%/if%]
            [%/param%]
            [%param *level_7%]
                        <li><a href="[@url@]">[@name@]</a>
                        [%if [@next_level@]%]
                            <ul>[@next_level@]</ul>
                        [%/if%]
            [%/param%]
            [%param footer%]
                    </ul>
                </li>
            [%/param%]
        [%/content_menu%]

        [%content_menu type:'blog' limit:''%]
            [%param *level_1%]
                <li><a href="[@url@]">[@name@]</a>
                [%if [@next_level@]%]
                    <ul>[@next_level@]</ul>
                [%/if%]
            [%/param%]
            [%param *level_2%]
                        <li><a href="[@url@]">[@name@]</a>
                        [%if [@next_level@]%]
                            <ul>[@next_level@]</ul>
                        [%/if%]
            [%/param%]
            [%param *level_3%]
                        <li><a href="[@url@]">[@name@]</a>
                        [%if [@next_level@]%]
                            <ul>[@next_level@]</ul>
                        [%/if%]
            [%/param%]
            [%param *level_4%]
                        <li><a href="[@url@]">[@name@]</a>
                        [%if [@next_level@]%]
                            <ul>[@next_level@]</ul>
                        [%/if%]
            [%/param%]
            [%param *level_5%]
                        <li><a href="[@url@]">[@name@]</a>
                        [%if [@next_level@]%]
                            <ul>[@next_level@]</ul>
                        [%/if%]
            [%/param%]
            [%param *level_6%]
                        <li><a href="[@url@]">[@name@]</a>
                        [%if [@next_level@]%]
                            <ul>[@next_level@]</ul>
                        [%/if%]
            [%/param%]
            [%param *level_7%]
                        <li><a href="[@url@]">[@name@]</a>
                        [%if [@next_level@]%]
                            <ul>[@next_level@]</ul>
                        [%/if%]
            [%/param%]
        [%/content_menu%]
    </ul>

Step 3: Create an information page

Create an information page, and set the "Body Template" to sitemap.

*Note: the page URL must not contain the text "sitemap", otherwise it will just display a 404 page.


Was this article useful?

Be notified when this page is updated. Optional.