How do I add a link to an image banner on Dawn theme?

Experiencing a really frustrating issue with my site and wanted to see if there is a solution!

I am using the Dawn theme and trying to wrap a link around the banner section. If I enter the anchor link MANUALLY into the theme, it works, but if I try to enter a link via the customizer, the link is stripped and not showing at all?

I have placed the following around the banner (including the closing tag):

{% if block.settings.image_link != blank %}

{% endif %}

As well as the following snippet into the schema:

{
"type": "url",
"id": "image_link",
"label": "Image Link"
},

This allows me to enter a URL on the customiser but the URL does not appear at all on the front end. In the image attached, you can see the href has been completely stripped out. As mentioned previously, if I manually enter the link into the theme then the href works. Am I missing something here?! TIA for any help :slightly_smiling_face:

This is a screenshot showing the stripped link within the link:

242636676_857938618191345_5696382375776658801_n.jpg

@abdigital

Please share store URL & Banner code.

Thanks!

@abdigital

Please add following schema

{
      "type": "url",
      "id": "image_banner_link",
      "label": "t:sections.image-banner.settings.image_banner_link.label"
    },

@abdigital

Use this liquid code

{% if block.settings.image_banner_link != blank %}

Thank you for the quick reply but unfortunately, that did not work. Here is the full code of the section if that helps?

{{ 'section-image-banner.css' | asset_url | stylesheet_tag }}

{%- if section.settings.adapt_height_first_image and section.settings.image != blank -%}
  {%- style -%}
    #Banner-{{ section.id }}::before, #Banner-{{ section.id }} .banner__media::before {
      padding-bottom: {{ 1 | divided_by: section.settings.image.aspect_ratio | times: 100 }}%;
      content: '';
      display: block;
    }
  {%- endstyle -%}
{%- endif -%}

  
  {%- if section.settings.image != blank -%}

{% if block.settings.image_banner_link != blank %}

{% endif %}
    
    

      
    

  
{% if block.settings.image_banner_link != blank %}

{% endif %} 
  
  {%- elsif section.settings.image_2 == blank -%}
    

      {{ 'lifestyle-2' | placeholder_svg_tag: 'placeholder-svg' }}
    

  {%- endif -%}
  {%- if section.settings.image_2 != blank -%}
    
      
    

  {%- endif -%}
  
    

      {%- for block in section.blocks -%}
        {%- case block.type -%}
          {%- when 'heading' -%}
            ## 
              {{ block.settings.heading | escape }}
            
          {%- when 'text' -%}
            
              {{ block.settings.text | escape }}
            

          {%- when 'buttons' -%}
            
              {%- if block.settings.button_label_1 != blank -%}
                {{ block.settings.button_label_1 | escape }}
              {%- endif -%}
              {%- if block.settings.button_label_2 != blank -%}
                {{ block.settings.button_label_2 | escape }}
              {%- endif -%}
            

        {%- endcase -%}
      {%- endfor -%}
    

  

{% schema %}
{
  "name": "t:sections.image-banner.name",
  "tag": "section",
  "class": "spaced-section spaced-section--full-width",
  "settings": [
    {
      "type": "image_picker",
      "id": "image",
      "label": "t:sections.image-banner.settings.image.label"
    },
    {
      "type": "image_picker",
      "id": "image_2",
      "label": "t:sections.image-banner.settings.image_2.label"
    },
    {
      "type": "url",
      "id": "image_banner_link",
      "label": "t:sections.image-banner.settings.image_banner_link.label"
    },
    {
      "type": "select",
      "id": "desktop_text_box_position",
      "options": [
        {
          "value": "flex-start",
          "label": "t:sections.image-banner.settings.desktop_text_box_position.options__1.label"
        },
        {
          "value": "center",
          "label": "t:sections.image-banner.settings.desktop_text_box_position.options__2.label"
        },
        {
          "value": "flex-end",
          "label": "t:sections.image-banner.settings.desktop_text_box_position.options__3.label"
        }
      ],
      "default": "center",
      "label": "t:sections.image-banner.settings.desktop_text_box_position.label"
    },
    {
      "type": "select",
      "id": "color_scheme",
      "options": [
        {
          "value": "accent-1",
          "label": "t:sections.image-banner.settings.color_scheme.options__1.label"
        },
        {
          "value": "accent-2",
          "label": "t:sections.image-banner.settings.color_scheme.options__2.label"
        },
        {
          "value": "background-1",
          "label": "t:sections.image-banner.settings.color_scheme.options__3.label"
        },
        {
          "value": "background-2",
          "label": "t:sections.image-banner.settings.color_scheme.options__4.label"
        },
        {
          "value": "inverse",
          "label": "t:sections.image-banner.settings.color_scheme.options__5.label"
        }
      ],
      "default": "background-1",
      "label": "t:sections.image-banner.settings.color_scheme.label"
    },
    {
      "type": "checkbox",
      "id": "stack_images_on_mobile",
      "default": true,
      "label": "t:sections.image-banner.settings.stack_images_on_mobile.label"
    },
    {
      "type": "checkbox",
      "id": "adapt_height_first_image",
      "default": false,
      "label": "t:sections.image-banner.settings.adapt_height_first_image.label"
    }
  ],
  "blocks": [
    {
      "type": "heading",
      "name": "t:sections.image-banner.blocks.heading.name",
      "limit": 1,
      "settings": [
        {
          "type": "text",
          "id": "heading",
          "default": "Image banner",
          "label": "t:sections.image-banner.blocks.heading.settings.heading.label"
        }
      ]
    },
    {
      "type": "text",
      "name": "t:sections.image-banner.blocks.text.name",
      "limit": 1,
      "settings": [
        {
          "type": "text",
          "id": "text",
          "default": "Give customers details about the banner image(s) or content on the template.",
          "label": "t:sections.image-banner.blocks.text.settings.text.label"
        }
      ]
    },
    {
      "type": "buttons",
      "name": "t:sections.image-banner.blocks.buttons.name",
      "limit": 1,
      "settings": [
        {
          "type": "text",
          "id": "button_label_1",
          "default": "Button label",
          "label": "t:sections.image-banner.blocks.buttons.settings.button_label_1.label",
          "info": "t:sections.image-banner.blocks.buttons.settings.button_label_1.info"
        },
        {
          "type": "url",
          "id": "button_link_1",
          "label": "t:sections.image-banner.blocks.buttons.settings.button_link_1.label"
        },
        {
          "type": "checkbox",
          "id": "button_style_secondary_1",
          "default": false,
          "label": "t:sections.image-banner.blocks.buttons.settings.button_style_secondary_1.label"
        },
        {
          "type": "text",
          "id": "button_label_2",
          "default": "Button label",
          "label": "t:sections.image-banner.blocks.buttons.settings.button_label_2.label",
          "info": "t:sections.image-banner.blocks.buttons.settings.button_label_2.info"
        },
        {
          "type": "url",
          "id": "button_link_2",
          "label": "t:sections.image-banner.blocks.buttons.settings.button_link_2.label"
        },
        {
          "type": "checkbox",
          "id": "button_style_secondary_2",
          "default": false,
          "label": "t:sections.image-banner.blocks.buttons.settings.button_style_secondary_2.label"
        }
      ]
    }
  ],
  "presets": [
    {
      "name": "t:sections.image-banner.presets.name",
      "blocks": [
        {
          "type": "heading"
        },
        {
          "type": "text"
        },
        {
          "type": "buttons"
        }
      ]
    }
  ]
}
{% endschema %}

@abdigital

Please try this code other add me as staff member

{{ 'section-image-banner.css' | asset_url | stylesheet_tag }}

{%- if section.settings.adapt_height_first_image and section.settings.image != blank -%}
  {%- style -%}
    #Banner-{{ section.id }}::before, #Banner-{{ section.id }} .banner__media::before {
      padding-bottom: {{ 1 | divided_by: section.settings.image.aspect_ratio | times: 100 }}%;
      content: '';
      display: block;
    }
  {%- endstyle -%}
{%- endif -%}

    
    

	{% if block.settings.image_banner_link != blank %}
	
      
	  
    

  {%- elsif section.settings.image_2 == blank -%}
    
      {{ 'lifestyle-2' | placeholder_svg_tag: 'placeholder-svg' }}
    

  {%- endif -%}
  {%- if section.settings.image_2 != blank -%}
  {% if block.settings.image_banner_link != blank %}
  
    

      
	    
    

  {%- endif -%}
  
    

      {%- for block in section.blocks -%}
        {%- case block.type -%}
          {%- when 'heading' -%}
            ## 
              {{ block.settings.heading | escape }}
            
          {%- when 'text' -%}
            
              {{ block.settings.text | escape }}
            

          {%- when 'buttons' -%}
            
              {%- if block.settings.button_label_1 != blank -%}
                {{ block.settings.button_label_1 | escape }}
              {%- endif -%}
              {%- if block.settings.button_label_2 != blank -%}
                {{ block.settings.button_label_2 | escape }}
              {%- endif -%}
            

        {%- endcase -%}
      {%- endfor -%}
    

  

{% schema %}
{
  "name": "t:sections.image-banner.name",
  "tag": "section",
  "class": "spaced-section spaced-section--full-width",
  "settings": [
    {
      "type": "image_picker",
      "id": "image",
      "label": "t:sections.image-banner.settings.image.label"
    },
    {
      "type": "image_picker",
      "id": "image_2",
      "label": "t:sections.image-banner.settings.image_2.label"
    },
    {
      "type": "url",
      "id": "image_banner_link",
      "label": "t:sections.image-banner.settings.image_banner_link.label"
    },
    {
      "type": "select",
      "id": "desktop_text_box_position",
      "options": [
        {
          "value": "flex-start",
          "label": "t:sections.image-banner.settings.desktop_text_box_position.options__1.label"
        },
        {
          "value": "center",
          "label": "t:sections.image-banner.settings.desktop_text_box_position.options__2.label"
        },
        {
          "value": "flex-end",
          "label": "t:sections.image-banner.settings.desktop_text_box_position.options__3.label"
        }
      ],
      "default": "center",
      "label": "t:sections.image-banner.settings.desktop_text_box_position.label"
    },
    {
      "type": "select",
      "id": "color_scheme",
      "options": [
        {
          "value": "accent-1",
          "label": "t:sections.image-banner.settings.color_scheme.options__1.label"
        },
        {
          "value": "accent-2",
          "label": "t:sections.image-banner.settings.color_scheme.options__2.label"
        },
        {
          "value": "background-1",
          "label": "t:sections.image-banner.settings.color_scheme.options__3.label"
        },
        {
          "value": "background-2",
          "label": "t:sections.image-banner.settings.color_scheme.options__4.label"
        },
        {
          "value": "inverse",
          "label": "t:sections.image-banner.settings.color_scheme.options__5.label"
        }
      ],
      "default": "background-1",
      "label": "t:sections.image-banner.settings.color_scheme.label"
    },
    {
      "type": "checkbox",
      "id": "stack_images_on_mobile",
      "default": true,
      "label": "t:sections.image-banner.settings.stack_images_on_mobile.label"
    },
    {
      "type": "checkbox",
      "id": "adapt_height_first_image",
      "default": false,
      "label": "t:sections.image-banner.settings.adapt_height_first_image.label"
    }
  ],
  "blocks": [
    {
      "type": "heading",
      "name": "t:sections.image-banner.blocks.heading.name",
      "limit": 1,
      "settings": [
        {
          "type": "text",
          "id": "heading",
          "default": "Image banner",
          "label": "t:sections.image-banner.blocks.heading.settings.heading.label"
        }
      ]
    },
    {
      "type": "text",
      "name": "t:sections.image-banner.blocks.text.name",
      "limit": 1,
      "settings": [
        {
          "type": "text",
          "id": "text",
          "default": "Give customers details about the banner image(s) or content on the template.",
          "label": "t:sections.image-banner.blocks.text.settings.text.label"
        }
      ]
    },
    {
      "type": "buttons",
      "name": "t:sections.image-banner.blocks.buttons.name",
      "limit": 1,
      "settings": [
        {
          "type": "text",
          "id": "button_label_1",
          "default": "Button label",
          "label": "t:sections.image-banner.blocks.buttons.settings.button_label_1.label",
          "info": "t:sections.image-banner.blocks.buttons.settings.button_label_1.info"
        },
        {
          "type": "url",
          "id": "button_link_1",
          "label": "t:sections.image-banner.blocks.buttons.settings.button_link_1.label"
        },
        {
          "type": "checkbox",
          "id": "button_style_secondary_1",
          "default": false,
          "label": "t:sections.image-banner.blocks.buttons.settings.button_style_secondary_1.label"
        },
        {
          "type": "text",
          "id": "button_label_2",
          "default": "Button label",
          "label": "t:sections.image-banner.blocks.buttons.settings.button_label_2.label",
          "info": "t:sections.image-banner.blocks.buttons.settings.button_label_2.info"
        },
        {
          "type": "url",
          "id": "button_link_2",
          "label": "t:sections.image-banner.blocks.buttons.settings.button_link_2.label"
        },
        {
          "type": "checkbox",
          "id": "button_style_secondary_2",
          "default": false,
          "label": "t:sections.image-banner.blocks.buttons.settings.button_style_secondary_2.label"
        }
      ]
    }
  ],
  "presets": [
    {
      "name": "t:sections.image-banner.presets.name",
      "blocks": [
        {
          "type": "heading"
        },
        {
          "type": "text"
        },
        {
          "type": "buttons"
        }
      ]
    }
  ]
}
{% endschema %}

There are errors in that code. I cannot add staff members at this point in time my apologies. Really appreciate the quick replies though!

@abdigital

Thanks!

Just in case anyone has the same problem I ended up finding the solution. I placed the schema under “sections” (not block) but was calling it in the code from “blocks”

Basically this:

{% if block.settings.image_link != blank %}

{% endif %}

Had to be changed to this:

{% if section.settings.image_link != blank %}

{% endif %}

I’m having the same issue - try and make an image with a hyperlink and add the schema and I keep getting a JSON error

eastcoastcollecting.com

Any help is apprecaited.

1 Like

Was it still in the image banner liquid file?

What code have you added? All code is in the same file. Share code and a screenshot of error if possible.

1 Like

Hello. I have the same problem. I want to do link the header banner but i cant understand where can i find the place that i must put the code. Please send me more details about this issue.

Thanks

1 Like

Hi There,

I am trying to work on the same problem.
Did you place the code into “Image-banner.liquid”?
Also I am not seeing the original code has “block.settings.image_link”.

It would be great if I can understand how you solve it.

Thank you very much.

hey in case it helps, i realised both the code bits have been added to the image-banner.liquid section

put the this code just before the "<div id=“Banner…”

{% if section.settings.image_link != blank %}

and after the last , just before the scheme stars put

{% endif %}

and then finally you can enter this code immediately after the “settings”: [ at the beginning of the scheme

{
"type": "url",
"id": "image_link",
"label": "Image Link"
},

hope that helps!

3 Likes

@tomski3000 dude thank you so much!

I tried everything in this thread but just couldn’t figure out where to start the if statement and where to put the {% endif %} and

Nothing seemed to work and I didn’t try your answer till the very end bc I thought it didn’t make sense to nearly the entire code but it actually worked! So once again I realized I don’t know ■■■■ about coding haha…

thank you so much it works!!

Almost perfect @tomski3000 ,

only the banner title is getting the link, unfortunately the image is not clickable…

Do you have a copy of the working liquid or if you can post it?