Use a custom font
We do not provide support for code customizations
If you are not comfortable making code changes, we highly recommend hiring an expert developer.
We rely on Shopify's Font Picker to provide a font selection for your store. To access these settings go to Theme settings > Typography. Installing a font not available in the default selection will involve making some code customizations.
Installing a custom font
Prepare your font files
Download your font in webfont file types such as
.woff2or.woffIf you don't have a webfont version of your font, you can use a generator to convert it. Font Squirrel has a tool you can use for this.
Upload font files
Open your Shopify admin and navigate to Content > Files.
Upload each file for your font.
Edit theme code
Open up the theme editor and select
theme__styles.liquidfrom within the snippets folderAdd the below code after the
{% style %}tag. Be sure to replaceMY_FONTwith your font name and ensure the URLs are correctly linking to your uploaded font.@font-face { font-family: "MY_FONT"; src: url('{{ "MY_FONT.woff2" | file_url }}') format("woff2"), url('{{ "MY_FONT.woff" | file_url }}') format("woff"); }
From here you can include your font by updating the below code inside the same file. The variables
--type-font-body-family,--type-font-header-familyand--type-font-nav-familycontrol the font family used for body, headings and navigation text.--type-font-body-family: {{ settings.type_font_body.family }}, {{ settings.type_font_body.fallback_families }}; --type-font-body-style: {{ settings.type_font_body.style }}; --type-font-body-weight: {{ settings.type_font_body.weight }}; --type-font-header-family: {{ settings.type_font_heading.family }}, {{ settings.type_font_heading.fallback_families }}; --type-font-header-style: {{ settings.type_font_heading.style }}; --type-font-header-weight: {{ settings.type_font_heading.weight }}; --type-font-nav-family: {{ settings.type_font_nav.family }}, {{ settings.type_font_nav.fallback_families }};
The updated code should look something like this
--type-font-body-family: 'MY_FONT'; --type-font-body-style: {{ settings.type_font_body.style }}; --type-font-body-weight: {{ settings.type_font_body.weight }}; --type-font-header-family: 'MY_FONT'; --type-font-header-style: {{ settings.type_font_heading.style }}; --type-font-header-weight: {{ settings.type_font_heading.weight }}; --type-font-nav-family: 'MY_FONT';
Last updated
Was this helpful?