HubSpot CMS

Header 3 Module

Header Module 3, provides display for content in a header format.

Unverified
?

After receiving a minimum of 25 recommendations, an entry earns the "Community Approved" badge.

Please keep in mind, all entries are community created and may not be fully supported by HubSpot.

0 Recommendations

View on:

GitHub

HTML + HUBL
          
            

{{ require_css("//cdn2.hubspot.net/hubfs/346178/designmodo/ui-kit/ui-kit-header/css/ui-kit-styles.css") }}
<!-- header-3 -->
{% if module.enable_menu %}
<header class="header-3 header-3-v2">
  <div class="container">
    <div class="row">
      <nav class="navbar col-sm-12" role="navigation">
        <div class="navbar-header">
          <button type="button" class="navbar-toggle">
            <span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span>
          </button>
          {% set link = page_by_id(module.header.company_link).absolute_url %}

          {% if module.header.use_custom_link %}
            {% set link = module.header.company_custom_link %}
          {% endif %}

          <a class="brand" href="{{ link }}" style="color: {{ module.header.company_name_color.color }};">
            {% if module.header.company_logo.src %}
            <img src="{{ module.header.company_logo.src }}" alt="{{ module.header.company_logo.alt }}" width="{{ module.header.company_logo.width }}" height="{{ module.header.company_logo.height }}">
            {% endif %}
            {{ module.header.company_name }}
          </a>
        </div>
        <div class="collapse navbar-collapse pull-right js-nav-styles" 
             data-nav-parent-color="{{ module.header.parent_menu_text_color.color }}"
             data-nav-parent-hover-color="{{ module.header.parent_menu_text_hover_color.color }}"
             data-nav-child-color="{{ module.header.child_menu_text_color.color }}" 
             data-nav-child-hover-color="{{ module.header.child_menu_text_hover_color.color }}" 
             data-nav-child-bg="{{ module.header.child_menu_background_color.color }}">
          {% menu id="{{ module.header.menu_field }}" overrideable=False %}
          <form class="navbar-form pull-left">
            {% if module.header.choose_cta_button %}
              <div class="btn-cta">{% cta guid="{{ module.header.cta_button }}" %}</div>
            {% else %}
              {% set styles = 'background-color: {{ module.header.button.button_color.color }}; color: #ffffff;' %}
              {% set link = page_by_id(module.header.button.link).absolute_url %}

              {% if module.header.button.use_custom_link %}
                  {% set link = module.header.button.custom_link %}
              {% endif %}

              {% if module.header.button.button_type == 'clear' %}
                  {% set styles = 'background-color: transparent; border: 2px solid {{ module.header.button.button_color.color }}; color: {{ module.header.button.button_color.color }};' %}
              {% endif %}

              {% if link %}
              <a class="btn btn-primary js-btn-color" href="{{ link }}" style="{{ styles }}" 
                 data-btn-type="{{ module.header.button.button_type }}" 
                 data-btn-color="{{ module.header.button.button_color.color }}" 
                 data-btn-hover-color="{{ module.header.button.button_hover_color.color }}">
                {{ module.header.button.button_text }}
              </a>
              {% endif %}
            {% endif %}
          </form>
        </div>
      </nav>
    </div>
  </div>
  <div class="header-background"></div>
</header>
{% else %}
<header class="header-3 header-3-v2" style="display: none;"></header>
{% endif %}

<section class="header-3-sub header-3-sub-v2 {% if module.enable_menu %}has-menu{% endif %}" style="background-color: {{ module.background_color }};">
    <div class="background" style="background-image: url('{{ module.background_image.src }}'); opacity: {{ module.background_opacity }};">&nbsp;</div>
    <div class="container">
        <div class="row">
            <div class="col-sm-6">
                {{ module.text }}
            </div>
        </div>
    </div>
</section>


          
        
CSS
          
            
          
        
JS
          
            jQuery(document).ready(function($) {
    $(".header-3-v2").each(function() {
        var o = $(this);
        
        if (o.hasClass("init")) {
            return;
        }

        o.addClass("init");

        var headerId = "id-" + Math.random().toString().slice(2);
        o.attr("id", headerId);
      
        var style = "";

        o.find(".js-nav-styles").each(function(){
            var parentMenuColor = $( this ).data( 'nav-parent-color' );
            var parentMenuHoverColor = $( this ).data( 'nav-parent-hover-color' );
            var childMenuColor = $( this ).data( 'nav-child-color' );
            var childMenuHoverColor = $( this ).data( 'nav-child-hover-color' );
            var childMenuBgColor = $( this ).data( 'nav-child-bg' );
            
            var navId = "id-" + Math.random().toString().slice(2);
            $(this).attr("id", navId);

            style += "#" + navId + " ul > li > a { color: " + parentMenuColor + "; } \n";
          	style += "#" + navId + " ul > li > a:hover, #" + navId + " ul > li > a:focus, #" + navId + " ul > li > a:active { color: " + parentMenuHoverColor + "; } \n";
            style += "#" + navId + " ul > li > .hs-menu-children-wrapper li a { color: " + childMenuColor + "; } \n";
          	style += "#" + navId + " ul > li > .hs-menu-children-wrapper li a:hover, #" + navId + " ul > li > .hs-menu-children-wrapper li a:focus, #" + navId + " ul > li > .hs-menu-children-wrapper li a:active { color: " + childMenuHoverColor + "; } \n";
            style += "#" + navId + " ul > li > .hs-menu-children-wrapper { background-color: " + childMenuBgColor + "; } \n";
            style += "#" + headerId + " .navbar-toggle .icon-bar { background-color: " + parentMenuColor + "; } \n";
        });
      
      	o.find(".js-btn-color").each(function(){
            var btnType = $(this).data('btn-type');
            var btnColor = $(this).data('btn-color');
            var btnHoverColor = $(this).data('btn-hover-color');
            
            var btnId = "id-" + Math.random().toString().slice(2);
            $(this).attr("id", btnId);

            $(this).removeAttr('style');

             if(btnType === 'normal') {
                style += "#" + btnId + ".btn { background-color: " + btnColor + "; color: #ffffff; } \n";
                style += "#" + btnId + ".btn:hover, #" + btnId + ".btn:focus, #" + btnId + ".btn:active { background-color: " + btnHoverColor + "; } \n";
            }

            if(btnType === 'clear') {
                style += "#" + btnId + ".btn { background-color: transparent; border: 2px solid " + btnColor + "; color: " + btnColor + " } \n";
                style += "#" + btnId + ".btn:hover, #" + btnId + ".btn:focus, #" + btnId + ".btn:active { background-color: " + btnColor + "; color: #ffffff } \n";
            }
        });

        $("<style type='text/css'/>").html(style).appendTo("head");
    });
});

          
        
Have Questions?

Ask technical questions in Slack.

HubSpot Developer Slack

Not a member yet? - join here
READ ME (VIEW IN GITHUB)

HubSpot

SUF HEADER 3

The Header module can be easily added to your existing HubSpot website and allows you create a centered header with text and custom colors

The HEADER 3 module demo can be visited here:

https://w.inboundlabs.co/header234demo

The HEADER 3 module is FREE and is part of the Startup Framework FREE and PAID packages:

https://marketplace.hubspot.com/products/inboundlabs/startup-framework-marketplace

Have Questions?

If you have questions, please email me at github (at) inboundlabs.co


HubSpot

Not developing on HubSpot CMS yet?

We'd love to have you a part of our developer community!

 
0 Recommendations

Contribute to the Gallery!

We bet you’ve coded some amazing stuff. Showcase them and help the community grow.

Contribute

Other Open Source Projects

Browse all other open source projects

CrankShaft Framework

A modern framework for accelerating build times on the HubSpot CMS. Based on a modified Bootstrap 4 framework.

Lead developers: Jon McLaren

Developer Chrome Extension

Chrome/Chromium extension for HubSpot CMS Developers that adds a developer menu, dark theme and useful shortcuts to commonly used HubSpot query parameters, resources, and tools for making HubSpot Development easier and more enjoyable.

Lead developers: Jon McLaren , William Spiro , Gonzalo Torreras

VS Code HubL Language Extension

This extension enables super fast local development of CMS pages, and is a great compliment to using the new local HubL server. It contains comprehensive HubL tag, function, filter and expression test auto-complete snippets, as well as their documentation.

Lead developers: William Spiro

Not coding on HubSpot CMS yet?

We invite you to explore why thousands of developers LOVE coding with HubSpot!

Contribute
Made with  by community members: InboundLabs.co