Typeface gone missing

WoodMart Fonts Not Loading: The Local Copy, the Google Leftovers and the Empty Icons

WoodMart copies your Google Fonts onto your own server by default. Good for speed, good for privacy, and quietly complicated: any weight it did not copy is fetched from Google anyway, and any copy that failed to download leaves your headings in whatever font the shopper's phone had handy.

October 17, 2026 · 8 min read

The short answer

When WoodMart fonts fail, open Dashboard > WoodMart > Status, check the Local Google Fonts section for failed downloads and click Redownload Local Google Fonts. Fonts chosen only in Elementor, WPBakery, block settings or a Theme Settings preset can bypass the local copy, so declare those families and weights in Theme Settings > Typography, save, and clear caches.

On this page
  1. The brand font on Monday, Arial on Tuesday
  2. Where a WoodMart page gets its type in 2026
  3. Why a WoodMart font goes missing, most likely first
  4. Icons that turn into little boxes
  5. Bringing WoodMart's typefaces back
  6. Typography that survives redesigns and migrations
  7. Fonts that arrive with the build

The brand font on Monday, Arial on Tuesday

Font failures on a WoodMart store rarely look like errors. They look like a slightly cheaper version of your store. The headings are a system sans serif, the bold is smeared because the browser faked it, and the cart icon in the header is a small empty rectangle. Here is what to write down before you start.

  • Every heading has fallen back to a system font. Something stopped the whole family arriving.
  • Regular text is fine but bold or italic looks wrong. A single weight or style is missing, and the browser is imitating it.
  • One landing page uses the wrong font. That page likely gets its typography from a preset or a builder element.
  • The Network panel shows fonts.googleapis.com even though local hosting is on.
  • Header icons show as boxes. Icons are a font too, and that font was refused.
  • Text appears late, or swaps visibly. That is font-display behavior rather than a missing file.

Where a WoodMart page gets its type in 2026

The switch is called Load Google Fonts locally, under Theme Settings > Performance > Fonts & Icons, and the docs say it is on by default. WoodMart takes the families and variants selected in the primary typography controls (Text font, Title font, Entities names font, Secondary font, Widget titles font and Header font, all under Theme Settings > Typography > Basic) and stores the files under wp-content/uploads/woodmart/google-fonts/fonts. A companion option, font-display for text fonts, sets how text behaves while those files load.

The docs are frank about the edges. Any family, weight or style not in the local cache is loaded from the Google CDN. A font-display value set only through a Theme Settings preset is not added to the global cache, so pages using that preset may call Google. The cache is rebuilt automatically after theme updates, and turning the switch off and saving deletes the local files.

Why a WoodMart font goes missing, most likely first

The download failed and nobody read the notice

Local hosting depends on your server fetching files from Google and writing them into uploads. A host that blocks outbound requests, or an uploads folder the server cannot write to, leaves gaps. Check the Status page for failed downloads, fix the cause with your host, then redownload.

The font was chosen inside the page builder

A heading set to a font in an Elementor widget, a WPBakery element or a block, but never in Theme Settings, is outside WoodMart's local cache. Elementor also has its own font loading settings. Declare the family and weight in Theme Settings so WoodMart can store it: the typography docs describe an Advanced rule with Assigned to elements left empty, which makes extra weights available to Gutenberg, Elementor and WPBakery without applying them site-wide.

A preset carries its own typography

Theme Settings presets can change typography on the pages their conditions match. Fonts and font-display values set only there may come from Google instead of your server. Move shared fonts into the global settings and keep preset changes small.

A cache or optimizer kept old font rules

After a redownload or a switch change, cached pages and combined stylesheets can still reference files that no longer exist. A second plugin that also localizes Google Fonts makes two systems compete for one job. Pick one, then purge every cache layer, as described in WoodMart CSS not updating.

A custom font is incomplete

Fonts uploaded under Theme Settings > Typography > Custom fonts need both .woff2 and .woff files for each weight, according to the docs. If the name matches a Google Font, the docs suggest a distinct name such as Lato-local to avoid a collision.

Icons that turn into little boxes

The search glass, the heart and the cart in a WoodMart header are drawn by an icon font. Browsers apply a strict rule to fonts: one requested from a different origin is refused unless the server sends an Access-Control-Allow-Origin header. The vendor's forum has a run of cases where header icons broke for exactly this reason, with the console reporting a font blocked by CORS policy.

The usual triggers are a site that answers at both www and non-www addresses, a WordPress Address that differs from the Site Address, or a CDN serving theme files from its own hostname. Make the addresses match the one visitors use and redirect the other, and have your host or CDN send the CORS header for font files. The general fonts guide walks through reading these errors in more detail.

Bringing WoodMart's typefaces back

  1. 1

    Record what is missing

    Note the page, the element and whether it is a whole family, one weight or an icon. Open the browser's Network panel filtered to fonts and the Console for errors.

  2. 2

    Read the Status page

    Under Dashboard > WoodMart > Status, check the Local Google Fonts list and failed downloads. Fix any server cause, then click Redownload Local Google Fonts.

  3. 3

    Move builder fonts into Theme Settings

    Set shared fonts in Theme Settings > Typography. For extra weights used only in builder elements, add an Advanced rule with the font and weight and leave Assigned to elements empty.

  4. 4

    Check presets

    Open every Theme Settings preset that matches the broken page and remove typography that duplicates or contradicts the global settings.

  5. 5

    Settle one font system

    Turn off font localizing in other plugins if WoodMart's switch is on, or the reverse. Two systems loading the same family waste requests and confuse caches.

  6. 6

    Fix icon origins

    If the console shows CORS errors, align the site addresses and add the CORS header for fonts at the host or CDN.

  7. 7

    Save, purge, verify

    Press Save options, purge every cache, then load the page in a private window and search the Network panel for fonts.googleapis.com and fonts.gstatic.com, as the docs suggest.

Typography that survives redesigns and migrations

  • Two families, a few weights. Every extra weight is another file to download, store and keep in sync.
  • Declare fonts globally, even when only one element uses them, so the local cache knows they exist.
  • Carry the uploads folder in any migration. The local font files live there, and a move that skips them leaves the theme pointing at nothing.
  • Check the Status page after theme updates. The cache rebuilds automatically, and an automatic job that fails is easy to miss.
  • Keep font-display in the global settings, not only in presets.

Fonts are also page weight. The WoodMart speed guide covers the rest of the Performance panel, and WoodMart slow website is the repair route when a store has already slowed. Other store faults sit on the WoodMart repair hub, and a header whose menu icon is missing rather than boxed is covered in WoodMart mobile menu not working.

Fonts that arrive with the build

On WordPress, a font reaches the shopper through the theme's cache, the builder's settings, a preset, a host that permits downloads and a CDN that permits fonts. Five chances to slip. In Next.js, next/font downloads the font files at build time and serves them from your own domain with the site, so there is no runtime trip to Google and no separate cache to rebuild. It needs a developer to change the type scale, which is the honest cost.

If your store keeps running into small failures like this, weigh WoodMart vs Next.js and read what moving WoodMart to Next.js involves. If WoodMart still suits you, and the WoodMart review explains when it does, our theme repair team can sort the fonts on a staging copy. More fixes by theme live in the troubleshooting section.

Questions people ask before they call

Yes, according to WoodMart's docs. It sits under Theme Settings > Performance > Fonts & Icons and stores font files in the uploads folder. It only covers families and variants chosen in the primary typography controls in Theme Settings, so fonts set elsewhere may still load from Google.

Something asked for a family, weight or style that is not in WoodMart's local cache. The usual sources are fonts set inside Elementor, WPBakery or block settings, typography set only in a Theme Settings preset, or another plugin loading its own fonts. Declare those fonts in Theme Settings and save.

WoodMart's typography docs describe adding an Advanced rule under Theme Settings > Typography with the font and weight set and Assigned to elements left empty. That makes the weight available in Gutenberg, Elementor and WPBakery without applying it to any element. Save, then check the Status page.

The docs require both .woff2 and .woff files for every weight you upload under Theme Settings > Typography > Custom fonts, with one entry per weight under the same name. If your font shares a name with a Google Font, give it a distinct name such as Lato-local. Confirm the font license allows self-hosting.

No. font-display controls what text does while a font file is on its way, such as showing a fallback first. If the file is missing or blocked, no setting there brings it back. Fix the download, the builder setting or the CORS error first, then tune font-display, keeping in mind that a late font swap can move text and cause layout shift.

Keep reading

Free · No obligation

Put your brand font back on every page

Tell us which pages look wrong. We will check the local font cache, the builder settings and the server, fix the cause and confirm nothing still calls Google.

Which of these sounds like you? (pick any)

Rather talk now? Call (210) 346-0848.

CallGet a quote