SP Page Puilder Custom Fonts - PHP 8.5 Issue "Max size limit exceeded." - Forum | JoomShaper
Awaiting an answer SP Page Builder Joomla 6 v6.10.0

SP Page Puilder Custom Fonts - PHP 8.5 Issue "Max size limit exceeded."

Asked by Hans 1 week ago Last activity 1 day ago

SP Page Puilder Custom Fonts - "Max size limit exceeded." This issue is widely known & discussed.

Today, I encountered a whole new dimension to this problem: On a website where custom fonts had been working fine up until now, they suddenly stopped working. Both SP Page Builder (6.10.0) and Joomla (6.2.0) are running the very latest versions.

The only thing I changed that caused these major issues was the upgrade from PHP 8.4 to 8.5 (BOTH very latest version after the bug). That’s what triggered this well-known error. So here’s a tip for anyone experiencing this error: Be sure to check your PHP version as well.

Both SP Page Builder (6.10.0) and Joomla (6.2.0) versions are explicitly certified for PHP 8.5.

At the same time, I’d like to report a reproducible bug: The current version of SP Page Builder isn’t 100% compatible with PHP 8.5, so for now, it’s better to stick with PHP 8.4.

18 replies

Robert

Got also SPPB 6.10.0 & J! 6.2 and running on PHP 8.5. Still my own custom fonts. But I have to say it's a modified PHP version, still 8.5.11, but a new build. And I deliver the fonts manually from my servers using a custom css file for the typo. So I wonder in what lies the difference.

Hans Asked this

You say "Still my own custom fonts." That implies that the fonts may have been installed under an earlier version of PHP and are still working under PHP 8.5. Is that the case?

Or did you actually try to delete your custom fonts and install new ones under PHP 8.5? That's what I did. PHP 8.5 caused the error; I rolled back to PHP 8.4, and everything worked perfectly again. It’s crystal clear that PHP 8.5 is the cause for "Max size limit exceeded" this time.

What hasn’t been proven:
I’ve come to believe that the error message "Max size limit exceeded" appears in all cases where something goes wrong with the upload, regardless of the reason. I also still believe there are a number of very different reasons that lead to this error.

Robert
1 week ago · edited

That’s correct; the fonts were installed under a different PHP version (8.3). I build my websites in MAMP Pro, where I install everything. The sites only move to a live server once it’s nearly complete—that might explain it. I upload the fonts myself, rather than using Font Book of using Helix. Perhaps this is helpful to you.

What else, I had to make a few edits in the PHP template in MAMP Pro after updating the PHP versions because I had some errors. The standard PHP template settings where used which caused errors. But that aside. You say rolled back to 8.4, I assume that is 8.4.27? Have you compared upload_max_filesize, post_max_size and memory_limit in both info files?

Hans Asked this

All tests were carried out under the same conditions, using both PHP 8.5 and PHP 8.4, in the following versions:
PHP Version 8.5.12-nmm1 - Issue "Max size limit exceeded."
PHP Version 8.4.27-nmm1 - Fonts upload perfectly
Everything was exactly the same; only the PHP version changed:
Upload Max Filesize 512M
Post Max Size 512M
Memory Limit 512M
Joomla:
Content>Media>Options:
Maximum Size (in MB): 110MB

Robert
1 week ago · edited

I decided to give it a try this morning. I uploaded a few fonts using Font Book, website running on PHP 8.5.12. I didn’t encounter any issues. Do note, this was done locally via MAMP Pro, running on PHP 8.5.12. My test on 8.5.12 showed no issues, so it’s becoming quite plausible that the problem lies with your hosting.

Hans Asked this
1 week ago · edited

Thank you very much for testing it. That's great, so I'm providing some additional information.
The whole topic of font uploads is still very unclear to me overall.

PHP Version 8.5.12-nmm1: This is a specially customized version provided by the web host (in this case, All-Inkl.com)

My goal was to load 4 font weights of the Roboto font locally into Page Builder.
Here’s what I did:
Attempt:
Upload each font weight individually, as described on JoomShaper.
This resulted in the following error message:
"An error has occurred.
1062
Duplicate entry ‘Roboto-local’ for key ‘family_name’"

Then I did a lot of searching and reading. I also saw that there’s quite a bit on this topic in the forum—many different posts—but they all seem to end without a solution.

I then found the following very interesting:
https://www.joomshaper.com/release/sp-page-builder-pro-next/v6.7.0
SP Page Builder 6 Pro 6.7.0
Released July 21, 2026
From the text:
"...
FIXED
Font weight options updated for locally uploaded fonts."

From this, I inferred that it might be possible to pack different font weights into a single ZIP file. Unfortunately, the description for “SP Page Builder 6 Pro 6.7.0” doesn’t specify in detail exactly which options have been updated.

However, I decided to try uploading multiple font weights in a single ZIP file, and it worked perfectly. A complete success.

After that, I upgraded PHP to the mentioned version 8.5.
Afterward, I needed two additional weights of the same font.
So I generated a new ZIP file containing all the font weights, deleted the old fonts, and tried to upload the new ZIP file with the complete set of new font weights.
That resulted in the error mentioned. Even the original ZIP file with 4 fonts (exactly the file I had uploaded before) could no longer be uploaded!!!

Since it had worked before and I had only changed the PHP version, I reverted PHP to the former version, and the font upload worked again, with the ZIP with 4 font weights and also the new ZIP with 6 font weights .

The behavior is reproducible. I switched back to PHP 8.5, and it didn't work there.

Afterward, I found the following:
SP Page Builder 6 Pro 6.10.0
Latest
Released 7 October 2026
"New
Added multi-weight support for custom fonts"
https://www.joomshaper.com/release/sp-page-builder-pro-next/v6.10.0

This means that my approach was absolutely correct—it was exactly the right way to do it—but it’s obviously not compatible with PHP 8.5, and that’s where the error lies.

Robert

Don’t know either, I would upload the fonts though ftp. Also no Google API keys needed. With a good Stylesheet using clamp you have all you need. Meanwhile write a message to your host to see if they can spot anything.

Hans Asked this
1 week ago · edited

I don't think All-Inkl provides a non-standard or buggy version of PHP 8.5. They have a huge number of clients, something like that would get around immediately.
The clamp function is interesting, but it won't be introduced until PHP 8.6. How do you use it in 8.5?
Another question:
Uploading fonts directly to templates/justice/fonts is straightforward—it’s clear how to do it. Is that ultimately the same as using the Page Builder’s upload feature? Do the fonts appear in the Page Builder’s Font Book?
I thought the Page Builder also handled additional configurations.
BTW, I’ve already customized the CSS in custom.css anyway.

Update:
I just checked where the fonts I uploaded with SP Page Builder Pro are stored:
Not in:
/TestJustice/components/com_sppagebuilder/assets/fonts
Nor in:
TestJustice/templates/justice/fonts

I can't find the fonts. Where are they?

Robert

Hi Hans,

Quick clarification on clamp: it’s a CSS function, not a PHP one, so it works in any modern browser regardless of your PHP version. I use it in custom.css for fluid typography. for quite a while now.

On fonts via FTP versus the Page Builder upload: they’re not the same thing. If you upload font files to templates/justice/fonts and load them with @font-face in custom.css, the browser just gets them through CSS. As far as I know they won’t show up in the Page Builder’s font list, because that list is managed by the builder itself (your family_name duplicate-key error suggests it stores uploaded fonts in the database). You simply use the family name in your CSS. I can’t say where the builder stores its own uploads, sorry.

This is the kind of setup I mean (adjust file names):

@font-face {
  font-family: "Roboto";
  src: url("../fonts/Roboto-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Roboto";
  src: url("../fonts/Roboto-Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

body {
  font-family: "Roboto", sans-serif;
  font-size: clamp(1rem, 0.95rem + 0.25vw, 1.125rem);
}

h1 {
  font-size: clamp(1.75rem, 1.2rem + 2.5vw, 3rem);
}

h2 {
  font-size: clamp(1.5rem, 1.1rem + 1.8vw, 2.25rem);
}

custom.css sits in templates/justice/css/, hence the ../fonts/ path. clamp(min, preferred, max) keeps the size between a minimum and maximum while it scales with the viewport width.

For the upload error itself, check the PHP error log at the moment the upload fails.

I made a video 5 months ago about clamp: Clamp in Helix & SPPB

Hans Asked this

Hi Robert, thanks for the explanations.
Clamp in CSS is interesting; I’d only seen it used in PHP and had no idea it existed in CSS as well.

I also upload the fonts and reference them in CSS, as you mentioned, using:
@font-face {
That’s necessary because I need to use the fonts in sections that aren’t managed by SP Page Builder at all.

What I’m curious about is, how do you use the fonts in SP Page Builder Pro?
Page Builder Pro has “Fontbook.” That’s where I upload them, and that’s where they’re displayed.
Then, under “Settings” in SP Page Builder, there’s the “Typography” feature. That’s where presets are defined.
Presets are a handy feature for quick and convenient typography control on a website. When I change a preset, I change the font on all elements controlled by SP Page Builder and can be sure that this actually happens. That’s really cool.

Can you use this functionality even though you’re not uploading the fonts via SP Page Builder at all, but rather via FTP?
That is the real question.

Robert

Forget fonts in page builder, once set in your stylesheet/css no need for fonts in page builder. The stylesheet takes care of all the fonts all over your website. So leave the font selection blank in pagebuilder.

Log in to reply.