Hello,
We maintain the website of an Italian trade union (CGIL Prato-Pistoia). For data
protection reasons the site must not make any request to fonts.googleapis.com or
fonts.gstatic.com: the fonts have to be served from our own server.
We have already hosted the fonts locally, using your own tools:
- Bebas Neue — installed through the SP Page Builder font manager as a local
font:media/com_sppagebuilder/assets/custom-fonts/Bebas Neue/with its
stylesheet.css, and a row of typelocalin#__sppagebuilder_fonts. - Encode Sans — downloaded locally by the same font manager:
media/com_sppagebuilder/assets/google-fonts/Encode Sans/, row of typegoogle. - The template's own font folder,
templates/shaper_helixultimate/fonts/, also
contains thewoff2files, declared with@font-faceincss/custom.css.
Despite this, the template Typography settings (Body font, H1–H6, Navigation) still
add a <link> to fonts.googleapis.com on every page of the site.
Looking at plugins/system/helixultimate/src/Core/HelixUltimate.php (version 2.2.11),
around lines 1290–1318:
$systemFonts = array(
'Arial', 'Tahoma', 'Verdana', 'Helvetica',
'Times New Roman', 'Trebuchet MS', 'Georgia'
);
if (is_array($fonts))
{
foreach ($fonts as $key => $font)
{
$font = json_decode($font ?? "");
if (!in_array($font->fontFamily, $systemFonts))
{
$fontUrl = '//fonts.googleapis.com/css?family=' . $font->fontFamily . ':100,…';
$this->doc->addStylesheet($fontUrl, ['version' => 'auto'], …);
}
…
}
}
So any family that is not one of those seven names is requested from Google, whether or
not a local copy exists. We could not find any parameter, prefix or setting that tells
Helix Ultimate "this font is already hosted here".
Our questions:
-
Is there a supported way, in Helix Ultimate 2.2.11, to pick a locally hosted font
in the template Typography fields, so that no request is made to Google? A local or
custom source in the font picker, a particular value in the parameter, or a setting
we have overlooked? -
If there is not: can Helix Ultimate read the fonts installed through the SP Page
Builder font manager (#__sppagebuilder_fonts)? Both are JoomShaper products, the
font files are already on the server in a known folder, but the two parts do not seem
to know about each other. -
If neither is possible today, is such an option planned? The requirement is common
for European websites since the German rulings on Google Fonts, and it currently
forces us to bypass your Typography panel altogether.
What we are doing in the meantime, in case it is useful to other users: we switch
off enable_body_font, enable_h1_font … enable_navigation_font in each template
style and reproduce the exact CSS that Helix would generate inside
templates/shaper_helixultimate/css/custom.css, next to the @font-face declarations.
The result on screen is identical and no request reaches Google — but the Typography
panel becomes inert, which is confusing for the other editors of the site, and the
settings have to be kept in two places.
Environment
| Joomla | 6.2.0 |
| PHP | 8.3.36 |
| Helix Ultimate | 2.2.11 (plugin and template) |
| SP Page Builder | 6.10.0 |
| Template styles | 6, one per language (it, en, zh, fr, es, ar), identical typography |
Thank you for your help.