Theme Documentation

Use the instructions contained herein to build out your awesome websites with our NationBuilder Mega-Theme & Custom Themes.

Content Blocks Placement


You can place your content blocks in six different places/ways on your website depending on which Theme → File you paste the first shortcode into:

  • On the homepage before the normal content section (if displayed) by pasting the appropriate shortcode into _nm-hp-blocks-before-content.html.
  • On the homepage after the normal content section (if displayed) by pasting the appropriate shortcode into _nm-hp-blocks-after-content.html.
  • On an internal page before the normal content section (if displayed) by pasting the appropriate shortcode into _nm-ip-blocks-before-content.html. There are two further steps: 
    1. Tag the page the block will appear on layout ip blocks via it's Settings → Tags.
    2. Wrap the shortcode in the following code, replacing your_slug_here with the Settings → Slug of the page the block will appear on:{% if page.slug == "your_slug_here" %}
      // your content block shortcode here
      {% endif %}
  • On an internal page after the normal content section (if displayed) by pasting the appropriate shortcode into _nm-ip-blocks-after-content.html. There are two further steps: 
    1. Tag the page the block will appear on layout ip blocks via it's Settings → Tags.
    2. Wrap the shortcode in the following code, replacing your_slug_here with the Settings → Slug of the page the block will appear on: {% if page.slug == "your_slug_here" %}
      // your content block shortcode here
      {% endif %}
  • On all pages except action pages and admin pages (such as a login page or a password reset page) after the normal content section (if displayed) by pasting the appropriate shortcode into _nm-ap-blocks.html.
  • On all pages except the homepage, action pages, and admin pages (such as a login page or a password reset page) after the normal content section (if displayed) by pasting the appropriate shortcode into _nm-ap-blocks.html and wrapping it in the following code:{% unless page.is_homepage? %}
    // your content block shortcode here
    {% endunless %}

NOTE: The other shortcodes you'll encounter when implementing your content blocks simply go into _nm-blocks.scss or _nm-blocks-js.html, regardless of where they appear on the website.