Hi @ellacoker
Dawn has no section like this built in, so you add a small one. No app needed.
- Go to Online Store > Themes.
- Click … next to your theme, then Edit code.
- Open the sections folder. Click the New file icon and name the file
two-portraits-text.liquid, then press Enter.
- Paste this into the empty file, then click Save.
<style>
#shopify-section-{{ section.id }} .two-portraits {
padding-top: {{ section.settings.padding_top }}px;
padding-bottom: {{ section.settings.padding_bottom }}px;
}
.two-portraits__inner {
display: flex;
align-items: center;
gap: 6rem;
}
.two-portraits__images {
display: flex;
gap: 2rem;
width: 55%;
}
.two-portraits__image {
width: 50%;
aspect-ratio: 4 / 5;
overflow: hidden;
}
.two-portraits__image img,
.two-portraits__image svg {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}
.two-portraits__text {
width: 45%;
}
.two-portraits__text h2 {
margin: 0 0 1.2rem;
}
.two-portraits__text p {
margin: 0 0 2.4rem;
}
.two-portraits__link {
color: currentColor;
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 0.6rem;
text-decoration-color: currentColor;
transition: text-decoration-color 0.3s ease;
}
.two-portraits__link:hover {
text-decoration-color: transparent;
}
@media screen and (max-width: 749px) {
.two-portraits__inner {
flex-direction: column;
gap: 3rem;
}
.two-portraits__images,
.two-portraits__text {
width: 100%;
}
}
</style>
<div class="two-portraits color-{{ section.settings.color_scheme }} gradient">
<div class="page-width two-portraits__inner">
<div class="two-portraits__images">
{%- for i in (1..2) -%}
{%- assign key = 'image_' | append: i -%}
<div class="two-portraits__image">
{%- if section.settings[key] != blank -%}
{{ section.settings[key] | image_url: width: 1000 | image_tag: loading: 'lazy', widths: '300, 500, 800, 1000', sizes: '(min-width: 750px) 25vw, 50vw' }}
{%- else -%}
{{ 'product-1' | placeholder_svg_tag: 'placeholder-svg' }}
{%- endif -%}
</div>
{%- endfor -%}
</div>
<div class="two-portraits__text">
{%- if section.settings.heading != blank -%}
<h2 class="h2">{{ section.settings.heading | escape }}</h2>
{%- endif -%}
{%- if section.settings.text != blank -%}
<p>{{ section.settings.text | escape }}</p>
{%- endif -%}
{%- if section.settings.button_label != blank -%}
<a class="two-portraits__link" href="{{ section.settings.button_link }}">{{ section.settings.button_label | escape }}</a>
{%- endif -%}
</div>
</div>
</div>
{% schema %}
{
"name": "Two portraits + text",
"settings": [
{ "type": "image_picker", "id": "image_1", "label": "Image 1" },
{ "type": "image_picker", "id": "image_2", "label": "Image 2" },
{ "type": "text", "id": "heading", "label": "Heading", "default": "Intermission, the final chapter." },
{ "type": "text", "id": "text", "label": "Text", "default": "The moments between movement and ease." },
{ "type": "text", "id": "button_label", "label": "Button label", "default": "Your Intermission." },
{ "type": "url", "id": "button_link", "label": "Button link" },
{
"type": "color_scheme",
"id": "color_scheme",
"label": "Color scheme",
"default": "scheme-1"
},
{ "type": "range", "id": "padding_top", "min": 0, "max": 100, "step": 4, "unit": "px", "label": "Top padding", "default": 36 },
{ "type": "range", "id": "padding_bottom", "min": 0, "max": 100, "step": 4, "unit": "px", "label": "Bottom padding", "default": 36 }
],
"presets": [
{ "name": "Two portraits + text" }
]
}
{% endschema %}
- Go back to Themes and click Customize.
- Click Add section and choose Two portraits + text.
- Pick your two images and edit the text and link. Tall portrait photos look best.
- Click Save.