{"id":6272,"date":"2025-11-02T12:41:42","date_gmt":"2025-11-02T11:41:42","guid":{"rendered":"https:\/\/webofcourse.com\/?p=6272"},"modified":"2025-11-11T13:43:34","modified_gmt":"2025-11-11T12:43:34","slug":"how-to-install-custom-fonts-in-the-astra-theme-free-version","status":"publish","type":"post","link":"https:\/\/webofcourse.com\/en\/how-to-install-custom-fonts-in-the-astra-theme-free-version\/","title":{"rendered":"How to Install Custom Fonts in the Astra Theme (Free Version)"},"content":{"rendered":"\n<p><a href=\"https:\/\/wordpress.org\/themes\/astra\/\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">Astra (Free Version)<\/a> is one of the lightest and most flexible WordPress themes. Although it doesn\u2019t yet support Full Site Editing (FSE), it may actually be faster to use. However, in its free version, it doesn\u2019t include a built-in system to upload custom fonts.<\/p>\n\n\n\n<p>Fortunately, the <a href=\"https:\/\/wordpress.org\/themes\/author\/brainstormforce\/\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">Brainstorm Force<\/a> team (the same developers behind Astra) created a free plugin called <a href=\"https:\/\/wordpress.org\/plugins\/custom-fonts\/\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">Custom Fonts<\/a>, which allows you to add almost any custom font to your site fairly easily, even without using Google Fonts.<\/p>\n\n\n\n<p>In fact, many high-quality fonts are not available in the Google Fonts library. Hosting them directly on your site can be useful for at least two important reasons.<\/p>\n\n\n\n<p><strong>Privacy:<\/strong> By avoiding loading fonts from third-party servers, you reduce the collection of user data by external providers (like Google), helping your site better comply with privacy regulations (e.g., GDPR).<\/p>\n\n\n\n<p><strong>Loading speed:<\/strong> Hosting fonts locally reduces external requests to Google\u2019s servers, improving page load times, especially for users with slow connections or in regions far from Google\u2019s servers.<\/p>\n\n\n\n<p>In this article, I will show you step by step how to do it.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Install the Custom Fonts Plugin<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Log in to your <strong>WordPress Dashboard<\/strong>.<\/li>\n\n\n\n<li>Go to <strong>Plugins \u2192 Add New<\/strong>.<\/li>\n\n\n\n<li>Search for <strong>\u201c<a href=\"https:\/\/wordpress.org\/plugins\/custom-fonts\/\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">Custom Fonts<\/a>\u201d<\/strong> by <em>Brainstorm Force<\/em>.<\/li>\n\n\n\n<li>Click <strong>Install Now<\/strong> and then <strong>Activate<\/strong>.<\/li>\n<\/ol>\n\n\n\n<p>Once activated, you will find a new menu item under <strong>Appearance \u2192 Custom Fonts<\/strong>.<\/p>\n\n\n\n<p>The plugin allows you to either import fonts from the Google Fonts library or upload fonts directly from your computer. This article focuses on the latter option.<\/p>\n\n\n\n<p>So, let\u2019s talk about fonts to upload from your computer. The most common web formats are <strong>.woff<\/strong> or <strong>.woff2<\/strong> (recommended). The .woff2 format is a compressed format for web use. Its name comes from WOFF (Web Open Font Format), but compared to .woff, it offers more efficient compression, reducing file sizes by up to 30%, and is supported by virtually all modern browsers (Chrome, Firefox, Edge, Safari).<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Upload Fonts Using Custom Fonts<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Go to <strong>Appearance \u2192 Custom Fonts<\/strong>.<\/li>\n\n\n\n<li>Click <strong>Add New<\/strong>.<\/li>\n\n\n\n<li>Enter the <strong>font name<\/strong> (e.g., \u201cAlternative Montserrat\u201d).<\/li>\n\n\n\n<li>Upload the font files directly from the <strong>Media Library<\/strong> or from your computer.<\/li>\n\n\n\n<li>Click <strong>Publish<\/strong>.<\/li>\n<\/ol>\n\n\n\n<p>Your new font is now registered and available in the theme.<\/p>\n\n\n\n<p>However, there may be a small issue because WordPress does not allow uploading files like .woff or .woff2 to the Media Library by default. You can bypass this with a simple snippet.<\/p>\n\n\n\n<p>Paste the following code in Appearance \u2192 Theme Editor \u2192 Theme Files \u2192 functions.php:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/** * Import Woff Fonts *\/ function allow_custom_font_types($mimes) { \/\/ Standard MIME type for WOFF and WOFF2 $mimes&#91;'woff'] = 'application\/font-woff'; $mimes&#91;'woff2'] = 'application\/font-woff2'; \/\/ Keep the alternative you had \/\/$mimes&#91;'woff'] = 'font\/woff'; \/\/$mimes&#91;'woff2'] = 'font\/woff2'; return $mimes; } add_filter('upload_mimes', 'allow_custom_font_types');<\/code><\/pre>\n\n\n\n<p>It is recommended to use a <a href=\"https:\/\/webofcourse.com\/wp-content\/uploads\/2026\/02\/astra-free-sticky-header-1.2.zip\">child theme for Astra<\/a>. If you haven\u2019t used a child theme (always the suggested option), you can use a plugin like <a href=\"https:\/\/wordpress.org\/plugins\/insert-headers-and-footers\/\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">WPCode<\/a>.<\/p>\n\n\n\n<p>If you are using an Astra Child theme, paste the code here:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"931\" src=\"https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/astra-free-theme-functions-file-snippet-for-woff2-upload-1024x931.png\" alt=\"\" class=\"wp-image-6269\" srcset=\"https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/astra-free-theme-functions-file-snippet-for-woff2-upload-1024x931.png 1024w, https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/astra-free-theme-functions-file-snippet-for-woff2-upload-300x273.png 300w, https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/astra-free-theme-functions-file-snippet-for-woff2-upload-768x698.png 768w, https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/astra-free-theme-functions-file-snippet-for-woff2-upload-600x545.png 600w, https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/astra-free-theme-functions-file-snippet-for-woff2-upload.png 1492w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p>Once the font (and its variants, if any) is uploaded in Custom Fonts, it will be available for use in Astra \u2192 Customize \u2192 Global \u2192 Typography \u2192 Content Font or Header Font, or for various h1, h2, etc.<\/p>\n\n\n\n<p><a href=\"\/?p=6236\">Learn how to create an advanced sticky header in Astra Free.<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Astra (Free Version) is one of the lightest and most flexible WordPress themes. Although it doesn\u2019t yet support Full Site Editing (FSE), it may actually be faster to use. However, in its free version, it doesn\u2019t include a built-in system to upload custom fonts. Fortunately, the Brainstorm Force team (the same developers behind Astra) created<span class=\"read_more_area\"><a class=\"read-more\" href=\"https:\/\/webofcourse.com\/en\/how-to-install-custom-fonts-in-the-astra-theme-free-version\/\"> Scopri di pi\u00f9&#8230;. <\/a><\/span><\/p>\n","protected":false},"author":1,"featured_media":6264,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_eb_attr":"","_uag_custom_page_level_css":"","footnotes":""},"categories":[81],"tags":[83],"class_list":["post-6272","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-wordpress","tag-astra-free-theme"],"uagb_featured_image_src":{"full":["https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/20251102-font-personalizzati-astra-theme.png",1024,1024,false],"thumbnail":["https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/20251102-font-personalizzati-astra-theme-150x150.png",150,150,true],"medium":["https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/20251102-font-personalizzati-astra-theme-300x300.png",300,300,true],"medium_large":["https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/20251102-font-personalizzati-astra-theme-768x768.png",768,768,true],"large":["https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/20251102-font-personalizzati-astra-theme.png",1024,1024,false],"1536x1536":["https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/20251102-font-personalizzati-astra-theme.png",1024,1024,false],"2048x2048":["https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/20251102-font-personalizzati-astra-theme.png",1024,1024,false],"post-thumbnail":["https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/20251102-font-personalizzati-astra-theme-604x270.png",604,270,true],"apcore_blog_large":["https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/20251102-font-personalizzati-astra-theme-1024x546.png",1024,546,true],"apcore_blog_medium":["https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/20251102-font-personalizzati-astra-theme-900x622.png",900,622,true],"apcore_blogstyle_thumb":["https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/20251102-font-personalizzati-astra-theme-700x737.png",700,737,true],"apcore_modern3_thumb_big":["https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/20251102-font-personalizzati-astra-theme-533x546.png",533,546,true],"apcore_modern4_thumb_big":["https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/20251102-font-personalizzati-astra-theme-1024x546.png",1024,546,true],"apcore_modern4_thumb_small":["https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/20251102-font-personalizzati-astra-theme-533x273.png",533,273,true],"apcore_shortcode_portfolio_squared":["https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/20251102-font-personalizzati-astra-theme-768x768.png",768,768,true],"apcore_shortcode_portfolio_landscape":["https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/20251102-font-personalizzati-astra-theme-768x384.png",768,384,true],"apcore_shortcode_portfolio_portrait":["https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/20251102-font-personalizzati-astra-theme-384x768.png",384,768,true],"apcore_shortcode_portfolio_small_squared":["https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/20251102-font-personalizzati-astra-theme-384x384.png",384,384,true],"woocommerce_thumbnail":["https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/20251102-font-personalizzati-astra-theme-300x300.png",300,300,true],"woocommerce_single":["https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/20251102-font-personalizzati-astra-theme-600x600.png",600,600,true],"woocommerce_gallery_thumbnail":["https:\/\/webofcourse.com\/wp-content\/uploads\/2016\/11\/20251102-font-personalizzati-astra-theme-100x100.png",100,100,true]},"uagb_author_info":{"display_name":"Web, of Course! Team","author_link":"https:\/\/webofcourse.com\/en\/author\/cingerla\/"},"uagb_comment_info":0,"uagb_excerpt":"Astra (Free Version) is one of the lightest and most flexible WordPress themes. Although it doesn\u2019t yet support Full Site Editing (FSE), it may actually be faster to use. However, in its free version, it doesn\u2019t include a built-in system to upload custom fonts. Fortunately, the Brainstorm Force team (the same developers behind Astra) created&hellip;","_links":{"self":[{"href":"https:\/\/webofcourse.com\/en\/wp-json\/wp\/v2\/posts\/6272","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webofcourse.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webofcourse.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webofcourse.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/webofcourse.com\/en\/wp-json\/wp\/v2\/comments?post=6272"}],"version-history":[{"count":3,"href":"https:\/\/webofcourse.com\/en\/wp-json\/wp\/v2\/posts\/6272\/revisions"}],"predecessor-version":[{"id":6300,"href":"https:\/\/webofcourse.com\/en\/wp-json\/wp\/v2\/posts\/6272\/revisions\/6300"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/webofcourse.com\/en\/wp-json\/wp\/v2\/media\/6264"}],"wp:attachment":[{"href":"https:\/\/webofcourse.com\/en\/wp-json\/wp\/v2\/media?parent=6272"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webofcourse.com\/en\/wp-json\/wp\/v2\/categories?post=6272"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webofcourse.com\/en\/wp-json\/wp\/v2\/tags?post=6272"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}