Webfonts lokal in WordPress nutzen
  • Zuletzt aktualisiert am
  • Webtimiser
  • Wordpress
  • 28

Wie kann ich Google Fonts lokal auf meinem Server hosten? Durch die DSGVO beschäftigen sich momentan sehr viele WP-Nutzer mit genau dieser Frage. Daher habe ich eine Anleitung geschrieben, wie Du die Google Webfonts lokal in WordPress nutzen kannst.

Google Fonts & DSGVO

Bei der Nutzung von Google Fonts wird bei jedem Aufruf Deiner Seite eine Verbindung zum Google Server hergestellt. Dabei wird unter anderem auch die IP-Adresse (personenbezogene Daten) des Nutzers an Google übermittelt. Ob weitere und welche Daten genau übertragen werden, weiß keiner so genau. In den Google FAQ gibt es bisher dazu leider keine wirklich hilfreichen Infos.

Legt man die DSGVO nun sehr streng aus, müsste man vom Nutzer eine Einwilligung zur Weitergabe seiner IP an Google einholen. Da die Verbindung zum Font-Server jedoch direkt beim Abruf erfolgt, ist das praktisch unmöglich. Aber vielleicht wird Google in nächster Zeit seinen Service anpassen, so dass er problemlos genutzt werden kann.

Bis dahin gibt es momentan 3 Möglichkeiten:

  • Du berufst Dich auf ein „berechtigtes Interesse“ (hübsches Design der Webseite) mit Verweis auf Art. 6 Abs. 1 lit. f DSGVO. Ob das rechtlich wirklich OK ist, kann ich als juristischer Laie natürlich nicht mit Sicherheit sagen.
  • Du verzichtest auf Webfonts und nutzt System-Schriften. Dieses Vorgehen teste ich gerade auf meinem Blog, aber hauptsächlich aus Performance-Gründen.
  • Du speicherst die Schriften lokal auf Deinem Server. Wie das funktioniert, erkläre ich Dir gleich Step by Step.

Welche Google Webfonts nutzt Du?

Bevor Du Deine Seite auf lokale Schriften umstellst, musst Du natürlich schauen, welche Fonts auf Deiner Seite genutzt werden.
Falls Du Dir da unsicher bist, kannst Du bei den meisten Themes in den Theme-Optionen nachschauen.
Alternativ kannst Du auch einen Blick in die Browser-Konsole werfen. Klingt sehr technisch, geht aber ganz einfach:

Du öffnest Deine Webseite in Chrome oder Firefox und drückst dann die F12-Taste (oder STRG+SHIFT+i). Im unteren Teil des Browser-Fensters erscheint dann die Browser-Konsole.
Hier wechselst Du in den Tab Network (Netzwerkanalyse) und ladest die Seite neu (F5). Nun hast Du einen guten Überblick, was alles auf Deiner Seite geladen wird.

Browser Konsole font check
Browser-Konsole: Welche Web Fonts werden geladen?

Am besten sortierst Du die ganzen Anfragen mit einem Klick auf Host und suchst dann nach fonts.googleapis.com.

In diesem Beispiel siehst Du nun, dass die Schrift Open Sans in den Varianten 400, 600 und 700 geladen wird. Und genau diese Fonts werde ich jetzt lokal in WordPress einbinden.

Google Webfonts lokal einbinden

Leider bietet der Google Font Service nur den direkten Download von ttf-dateien an. Möchte man Webfonts lokal hosten, benötigt man aber noch andere Schriftformate:

  • woff und woff2 für moderne Browser
  • ttf für Safari, Android und iOS
  • svg und eot für ältere Browser (z.B. IE 9, ältere iOS)

Zum Glück gibt es aber Seiten wie Fontsquirell (bietet nur woff-Formate an) oder google-webfonts-helper.com . Hier kannst Du ganz bequem nach Schriften suchen und sie in den benötigten Formaten downloaden.

Allerdings sollte man dabei auch die Lizenz der Schriften beachten. Man darf zwar Google Fonts frei verwenden, aber die Umwandlung in die Webfont-Formate (woff) kann zumindest bei der SIL-Lizenz problematisch sein. Sicherer sind hingegen Schriften, die unter der Apache Lizenz veröffentlicht sind. Eine Übersicht findest Du unter: fonts.google.com/attribution.

Google Webfont auswählen und downloaden

Zunächst öffnest Du die Seite google-webfonts-helper.herokuapp.com und tippst im Suchfeld oben links die gewünschte Schriftart ein. In diesem Fall ist es Open Sans sans-serif. Anschließend musst Du nur die aufgeführten 4 Punkte durchgehen.

1. Charsets
Hier kannst Du einfach die Standardeinstellung latin übernehmen. Wenn Du eine andere Sprache nutzen möchtest, kannst Du auch noch andere Zeichensätze hinzufügen.

2. Styles
Unter dem Punkt Styles wählst Du die benötigten Schriftschnitte aus. Also z.B. fett oder kursiv. Für dieses Beispiel nutze ich Open Sans in regular (400), 600 und 700.

3. CSS
Das Tool liefert Dir nun den CSS-Code für Deine Fontauswahl an.
In der Standard-Einstellung bekommst Du den Code für den besten Browser-Support. D.h. es werden alle Formate generiert.
Wenn Du nur aktuelle Browser unterstützen möchtest, kannst Du auf den Button Modern Browsers klicken. Dann werden nur noch die Formate woff und woff2 berücksichtigt.

CSS Font Anweisungen
CSS-Code für das Einbinden der Schriften

Den CSS-Code kannst Du einfach kopieren und z.B. in die CSS-Datei Deines Child Themes einfügen.

4. Download files
Im letzten Step kannst Du die Schrift mit allen ausgewählten Formaten als ZIP-Datei downloaden.
Das Archiv musst Du dann entpacken und anschließend auf Deinen Server hochladen. Dafür legst Du am besten einen eigenen Ordner (fonts) an und platzierst ihn z.B. im Child-Theme.

Webfonts downloaden
Download der Fonts mit dem Webfont Helper

Jetzt kann die Schrift Open Sans lokal in WordPress geladen werden. Aber leider wird noch eine Verbindung zum Font-Server hergestellt.

Google Webfonts in WordPress deaktivieren

Leider ist das Deaktivieren der Google Fonts bei vielen Themes ein Problem, da es hierfür meistens keine direkte Einstellmöglichkeit gibt.
Um die Fonts dennoch zu entfernen, gibt es verschiedene Möglichkeiten. Diese sind aber immer vom genutzten Theme abhängig:

Theme-Style per dequeue deaktivieren
Hierzu musst Du zunächst genau wissen, wie die Fonts vom Theme eingebunden werden. Erst dann kannst Du sie auch deaktivieren.
Beim aktuellen WordPress Theme Twenty Seventeen wäre es das folgendes Snippet:

function removeTwentySeventeenFonts() { 
wp_dequeue_style('twentyseventeen-fonts'); 
} 
add_action('wp_enqueue_scripts', 'removeTwentySeventeenFonts');

Diese Funktion kannst Du dann in die functions.php des Child-Themes oder in eine custom-functions kopieren.

Hinweis: vor Änderungen an der functions.php solltest du ein Backup machen

Für Autoptimize-Nutzer
Bei manchen Themes kann man die Fonts deaktivieren, indem man bei Autoptimize unter Extras den Punkt „Google Fonts entfernen“ auswählt.

Diverse Plugins
Es gibt einige Plugins, die unter anderem auch Google Fonts entfernen. In meinen Tests haben leider die wenigsten davon zuverlässig funktioniert. Auch wurden viele Plugins schon länger nicht mehr aktualisiert. Das einzige empfehlenswerte Plugin ist Clearfy.

Ich nutze folgendes Code-Snippet, das bisher sehr gut funktioniert:

function removeGoogleFonts(){
		global $wp_styles;
			$regex = '/fonts\.googleapis\.com\/css\?family/i';
			foreach($wp_styles->registered as $registered) {

				if( preg_match($regex, $registered->src) ) {
					wp_dequeue_style($registered->handle);
				}
			}
		}
add_action('wp_enqueue_scripts', 'removeGoogleFonts', 999);

Bisher konnte ich mit diesem Schnipsel schon in diversen Themes die Google Fonts deaktivieren. Erfolgreich getestet habe ich es z.B. mit den WordPress Standard Themes, Betheme, Divi, Herald, Brooklyn und einigen anderen WordPress Themes.

Nur bei Enfold funktioniert es nicht, da muss stattdessen dieses Snippet eingefügt werden:

function enfold_customization_switch_fonts() {
    global $avia;
    $avia->style->print_extra_output = false;
}
add_action( 'init', 'enfold_customization_switch_fonts' );

Update: Seit der Version 4.4. von Enfold können Fonts auch lokal eingebunden werden.

Eigenes Font Plugin

Da ich aktuell recht viele Webseiten auf lokale Fonts umstelle, habe ich mir dazu ein eigenes Funktionalitäten-Plugin gebastelt. So muss ich nicht immer in den verschiedenen Themes nach den Styles suchen, sondern muss nur die Fonts austauschen und die CSS-Datei anpassen.
Außerdem bleibt der Code auch erhalten, falls das WordPress Theme eines Tages ausgewechselt wird.

Bevor ich auf den Code eingehe, hier kurz die Ordner-Struktur:

Plugin-Order Fonts-lokal:
darin die Plugin-Datei local-fonts.php
Unterordner css:
mit der Datei local-fonts-style.css
Unterordner fonts:
enthält die Schriften

Ordnerstruktur Font Plugin
Aufbau des Plugins

Den Aufbau der Plugin-Datei habe ich aus meinem Tutorial übernommen. Natürlich kannst Du hier die Angaben durch Deine eigenen ersetzen.

Hinweis: vor Änderungen an der functions.php oder dem Testen von eigenen Plugins solltest du ein Backup machen

Hier also der Plugin-Header:

<?php
/*
Plugin Name: Fonts lokal einbinden
Plugin URI: https://www.webtimiser.de/webfonts-lokal-in-wordpress
Description: Fonts lokal in WordPress nutzen und Verbindung zu 
Google Fonts deaktivieren
Author: Sonia Rieder
Author URI: https://www.webtimiser.de
Version: 1.0
*/

/* Verbiete den direkten Zugriff auf die Plugin-Datei */
if ( ! defined( 'ABSPATH' ) ) exit;

/* Nach dieser Zeile den Code einfügen*/

Als nächstes wird die CSS-Datei für die Fonts eingebunden:

function add_fonts() {
	wp_register_style('local-fonts', plugin_dir_url( __FILE__ ) . 'css/local-fonts-style.css');
	wp_enqueue_style('local-fonts');

}
add_action('wp_enqueue_scripts', 'add_fonts',1);

Dadurch wird das Stylesheet local-fonts-style.css in WordPress geladen. In diese Datei kopiere ich genau die @font-face Anweisungen, die der Webfont helper unter Punkt 3 angezeigt hat.

Fonts entfernen

Hier füge ich das oben beschriebene Snippet ein und beende den Code:

function removeGoogleFonts(){
		global $wp_styles;
			$regex = '/fonts\.googleapis\.com\/css\?family/i';
			foreach($wp_styles->registered as $registered) {

				if( preg_match($regex, $registered->src) ) {
					wp_dequeue_style($registered->handle);
				}
			}
		}
add_action('wp_enqueue_scripts', 'removeGoogleFonts', 999);
/* Nach dieser Zeile KEINEN Code mehr einfügen*/
?>

Nun kann ich den gesamten Ordner per FTP auf meine Webseite in den Ordner wp-content/plugins/ übertragen. Anschließend muss ich nur noch das Plugin aktivieren und kurz prüfen, ob alles funktioniert.

Alternativ kann man auch den Ordner in ein ZIP-Archiv packen und das Plugin wie gewohnt installieren. Also im Dashboard unter > Plugins > installieren > Plugin hochladen.

Die Tutorial-Dateien kannst Du gerne als Vorlage nutzen und frei anpassen.

Download der Tutorial-Datei

Wie hat Dir dieser Beitrag gefallen? 1 Star2 Stars3 Stars4 Stars5 Stars (33 Bewertungen, Ø: 4,94 von 5)
loadingLoading...

 

Fazit:

Schon vor dem DSGVO-Hype haben sich viele WordPress-Nutzer Gedanken über die Vor- und Nachteile der Nutzung von Google Webfonts gemacht. Aber hauptsächlich aus Page-Speed-Gründen. Denn jede externe Verbindung verursacht zusätzliche Requests, die sich häufig negativ auf die Performance der Seite auswirken.

Wenn man die Fonts lokal in WordPress nutzt, entfallen einige Anfragen und die Seite könnte unter Umständen dadurch etwas schneller werden. Bei meinen Tests waren die Seiten ohne Google Fonts im Schnitt ca. 100 – 200 ms schneller.
Allerdings performt ein günstiges Shared Hosting mit den lokalen Fonts nicht unbedingt besser als ein Google Server.
Wer die Ladezeit der Fonts verbessern möchte und beim Design Abstriche machen kann, sollte mal einen Versuch mit System-Fonts wagen. Dabei gibt es dann auch keine Lizenz- und Datenschutzprobleme.

Dieser Beitrag hat 28 Kommentare

  1. User Avatar

    Interessant, dass Du gerade bei Enfold Probleme hast, Google Fonts zu entfernen. Enfold ist wohl das Theme mit den besten DSGVO voreinstellungen – darunter die Option Google Fonts lokal zu hosten.

    1. Webtimiser

      Hallo Phil,
      stimmt, seit Enfold 4.4. kann man Fonts auch lokal hosten. Danke für den Hinweis!
      VG Sonia

  2. User Avatar

    Vielen Dank, eine gute und sehr ausführliche Anleitung. Allerdings für mich einfach zu schwierig umzusetzen. Wer soll als Anfänger das alles verstehen? WordPress soll angeblich ein so einfaches und intuitiv zu bedienendes “Webseiten-Programm” sein. Ich finde, es wird immer schwieriger mit jeder Neuerung und jetzt auch noch die teilweise unsinnigen Datenschutzregelungen, die ebenfalls umgesetzt werden müssen. Anstatt Beiträge zu schreiben, muss ich mich stundenlang mit so etwas auseinandersetzen.

    Ich finde das einfach schwierig.

    Trotzdem vielen Dank an dieser Stelle für derartig ausführliche Erklärungen.

    1. Webtimiser

      Hallo Barbara,
      gerne!
      Kann Dich sehr gut verstehen! Die DSGVO hat mich auch sehr viel Zeit gekostet, die ich lieber mit sinnvollen Dingen verbracht hätte…

      LG Sonia

  3. User Avatar

    Hallo Sonia,
    Vielen Dank für die tolle Anleitung
    Ich habe bei dem Theme Sydney das Plugin local Fonts installiert.
    Aber so wie ich das beurteile hat das nur teilweise funktioniert.
    Muss ich zusätzlich noch eine custom Funktions erstellen nach art
    “function removeTwentySeventeenFonts”

    Danke schon mal im Voraus

    Dieter

    1. Webtimiser

      Hallo Dieter,
      bei mir funktioniert das Plugin mit dem Sidney-Theme. Hast Du vielleicht ein paar andere Plugins, die Google Fonts laden? Oder Google Maps?
      Viele Grüße, Sonia

  4. User Avatar

    Hi, tolle Anleitung, hat alles fkt. Allerdings sehe ich jetzt zusätzlich zu meinen lokal eingebundenen Schriftarten, einen Eintrag: data:application/fo… (application:font-woff) mit vielen Zeichen unter, über die Netzwerkanalyse, => Untersuchen – Chrome. Nachdem ich das Plugin installiert habe. Ist das normal? Danke für eine Antwort vorab!

    Danke.

    1. Webtimiser

      Hi Jay,
      eigentlich nicht. Hast Du die Fonts vielleicht als Data-URI eingebunden? Also in etwa so: src: url(data:font/woff;base64,d09GRgABAAAAA ?
      Könnte auch von Icons-Fonts usw. kommen.
      VG Sonia

      1. User Avatar

        Hi Sonja, das Problem hat sich gelöst. Habe den Cache geleert, bzw die Cookies über Browser Cookies / Cache löschen leeren, danach war der Eintrag weg. Jetzt aber noch eine kleine Frage, wie zuverlässig ist diese Anzeige Netzwerk Analyse über Untersuchen Firefox oder Chrome. Sind das dann wirklich definitiv alle Web Fonts die geladen werden? Oder gibt es noch eine andere Möglichket das zu überprüfen welche Fonts auch wirklich geladen werden (nicht das noch was im Hintergrund läuft). Ich frage nur weil auch wenn ich alles deaktiviere alle Google Fonts ich trotzdem noch immer Open Sans sehe oder Robot, Cache ist geleert, oder liegt das daran dass ich diese Schriftart vllt lokal auf dem PC habe. Ich will nur auf Nr sicher gehen, dass kein Google Web Fonts Service mehr im Hintergrund kommuniziert mit Google. Danke nochmals!

          1. User Avatar

            Hi Sonia,
            super, vielen Dank für deine große Hilfe!
            VG Jay

  5. User Avatar

    Hi Sonia,

    vielen Dank für die ausführliche Info.

    Ich habe alles so befolgt, wie Du beschreibst.
    CSS im style.css eingefügt, Fonts heruntergeladen, auf den Server hochgeladen und leider wird die Schriftart auf meiner Webseite nicht angezeigt.
    Woran kann es liegen?
    Ich hatte die Schriften sowohl direkt in den fonts Ordner geladen als auch in dem Ordner gelassen, der entsteht, wenn man den Zip File herunterlädt.
    Beides sorgt nicht dafür, dass die Schriften auf der Webseite angezeigt werden.
    Muss ich in der Functions.php noch irgendwie darauf verweisen, woher die Schriften vom Server geholt werden müssen?

    Über eine Antwort freue ich mich.
    Danke!

    Keno

    1. Webtimiser

      Hallo Keno,
      weitere Einstellungen sind nicht nötig, aber hast Du mal den Cache geleert?
      VG Sonia

  6. User Avatar

    Hey Sonia,
    vielen Dank für dein Code-Snippet LOCAL-FONTS. Es läuft prima – bis jetzt ist die Welt noch in Harmonie.
    Interessanterweise findet sich auf einmal in der Browser-Console unter Sources eine Verbindung zu cdnjs.cloudflare.com. Hast du eine Idee für ein Dummy-Snippet, mit dem ich x-beliebige Nervensägen gegen Null läufen lassen kann.
    Nochmals Danke für dein Snippet.
    Servus Armin

    1. Webtimiser

      Hi Armin,
      freut mich sehr!
      Habe leider kein Snippet parat. Aber schau doch mal in der Browserkonsole, woher die Verbindung kommt.
      Viele Grüße
      Sonia

      1. User Avatar

        Hey Sonia, hey Folks.
        Hier nun ein kurzer Blick unter die Motorhaube:

        # *********************************************************************************** #
        Webseite aufgerufen und unter SOURCES:
        ===========================
        cdnjs.cloudflare.com
        –>ajax/libs/lity/2.3.1
        —>lity.min.js
        —>lity.min.css

        Kopfzeile der *.js und *.css
        ———————————
        /*! Lity – v2.3.1 – 2018-04-20
        * http://sorgalla.com/lity/
        * Copyright (c) 2015-2018 Jan Sorgalla; Licensed MIT

        # *********************************************************************************** #

        Den Quelltext erspare ich euch – meine Idee war jetzt, dein FUNTIONALITÄTEN-Plugin mit Einträgen zu erweitern, damit ich Verbindungen zu unerwünschten Domainen (fontawesome.com, etc…) blocken kann und keine Kommunikation mehr, außerhalb meiner Domaine zu externen Servern, stattfindet.

        Eine ähnliche Vorgehensweise habe ich mit meiner hosts-Datei gemacht, in die ich Domainennamen eintrage, die auf LOCALHOST127.0.0.1 dann verweisen, wodurch z.B. keine Verbindungen zu Update-Servern mehr aufgebaut werden können.

        UND GENAU DAFÜR HOFFE ICH AUF EINE “DUMMY-Datei”. Ich schicke dir per Paypal auch gerne ein Dankeschön.

        Servus Armin

  7. User Avatar

    Moin Sonia,

    Danke für das Plugin! Leider scheint es mit dem Theme “Vegeta” nicht kompatibel zu sein.
    Das Theme ermöglicht es, Schriften über die “Customize”-Funktion anzupassen, und ruft die Fonts immer vom Google Server ab…
    In der Functions.php steht dann z.B.:

    /**
    * Enqueue scripts and styles.
    */
    function vegeta_scripts() {
    wp_enqueue_style( ‘vegeta-style’, get_stylesheet_uri() );

    $font1 = get_theme_mod(‘primary-font’);
    if($font1 == null){
    $font1 = ‘Roboto’;
    }
    $font2 = get_theme_mod(‘secondary-font’);
    if($font2 == null){
    $font2 = ‘Roboto+Slab’;
    }

    wp_enqueue_style( ‘vegeta_google-fonts’, ‘//fonts.googleapis.com/css?family=’. str_replace(” “, “+”, $font1) .’:400,300,900|’. str_replace(” “, “+”, $font2) . ‘:300’);
    wp_enqueue_style( ‘font-awesome’, get_template_directory_uri().’/css/font-awesome.min.css’);
    wp_enqueue_script( ‘vegeta_myscript’, get_template_directory_uri().’/js/howljs.js’, array( ‘jquery’ ), ”, true);

    if ( is_singular() && comments_open() && get_option( ‘thread_comments’ ) ) {
    wp_enqueue_script( ‘comment-reply’ );
    }
    }
    add_action( ‘wp_enqueue_scripts’, ‘vegeta_scripts’ );

    Kannst du mir da weiterhelfen? Wäre klasse!

    LG

    1. Webtimiser

      Hallo Phillip,
      das Theme ist ja echt schon alt und die Fonts sind nicht sauber eingebunden… Da würde ich einfach mal die Quick’n’Dirty-Methode anwenden! Kommentiere einfach folgende Passage aus:
      // wp_enqueue_style( 'vegeta_google-fonts', '//fonts.googleapis.com/css?family='. str_replace(" ", "+", $font1) .':400,300,900|'. str_replace(" ", "+", $font2) . ':300');
      Falls es jemals wieder ein Update für das Theme geben sollte, ist die Anpassung natürlich weg.
      LG Sonia

  8. User Avatar

    Ich bekomme es leider gar nicht hin … Google Fonts sind zwar deaktiviert aber jetzt wird Times angezeigt als Font …

    1. Webtimiser

      Hallo Anja,
      habe mir Deine Seite gerade angesehen. Du hast die Fonts (Oswald) eingebunden, aber noch nicht das Stylesheet angepasst. Wenn Du Punkt 3 erledigt hast, sollte alles funktionieren.

      VG Sonia

  9. User Avatar

    Hallo, ich habe es gerade probiert und es geht leider nicht. Muss ich den Code von Andreas noch hinzufügen? Beim Avada Theme bekomme ich es einfach nicht hin.

    1. Webtimiser

      Hallo Sunny,
      habe das Plugin jetzt schon bei ca. 15 Avada-Seiten problemlos eingesetzt. Was genau funktioniert denn nicht? Hast Du vielleicht Google Maps? Oder ein anderes Plugin, das Google Fonts ladet?
      VG Sonia

  10. User Avatar

    Ich fummel ja nur selten im Code rum, aber das hat einwandfrei funktioniert, danke!

    1. Webtimiser

      Hallo Tobias,
      prima, freut mich!
      VG Sonia

  11. User Avatar

    Hallo Sonia, super Anleitung. Hat sofort funktioniert mit dem Plugin und Divi als Theme. Ich hab noch eine Frage zu der SIL Lizenz. Muss ich die Fonts umbenennen bach der Umwandlung in woff, etc. Wo veröffentlichst Du die Lizenzen auf Deinen Seite?
    PS: hoffe das Du ist ok.

    1. Webtimiser

      Hallo Rolf,
      prima!
      Ich versuche nur Fonts mit Apache-Lizenz zu verwenden bzw. System-Schriften, um das SIL-Problem zu umgehen. Das woff-Format scheint wohl OK zu sein, was man bei sil.org nachlesen kann.
      Man könnte sich die Dateien vielleicht auch von Google holen. Wenn man z.B. https://fonts.googleapis.com/css?family=Open+Sans%3A300 eingibt, sieht man die @font-face Anweisungen und auch den Dateinamen + Speicherort der Fonts.

      Viele Grüße, Sonia

  12. User Avatar

    Hab den Code ausprobiert und gleich mit dem ersten Theme hat es leider nicht funktioniert 😉
    Beim Rowling-Theme wird der Google Font bei der action ‘wp_print_styles’ eingehängt, die erst nach ‘wp_enqueue_scripts’ ausgelöst wird.
    Doch auch das einhängen bei dieser action hat nicht zum Erfolg geführt.
    Und zwar wird in diesem Theme der Style auf dem der regex greift nicht direkt enqueued, sondern indirekt als Abhängigkeit zur normalen style.css. Deswegen geht der dequeue ins Leere.

    Ich hab daraufhin die Funktion erweitert, damit sie auch die Abhängigkeiten nach dem Google Style prüft und gegebenenfalls die Abhängigkeit löscht:

    add_action(‘wp_print_styles’, ‘removeGoogleFonts’, 999);
    function removeGoogleFonts(){
    global $wp_styles;
    $regex = ‘/fonts.googleapis.com/css?family/i’;
    $google_styles = [];
    foreach($wp_styles->registered as $registered) {
    if( preg_match($regex, $registered->src) ) {
    $google_styles[] = $registered->handle ;
    wp_dequeue_style($registered->handle);
    }
    }
    // search in dependencies and delete dependencies
    foreach($wp_styles->registered as $registered) {
    foreach ($registered->deps as $id => $dep) {
    if (in_array($dep, $google_styles)) {
    unset($wp_styles->registered[$registered->handle]->deps[$id]);
    }
    }
    }
    }

    Vielleicht hilft es jemandem weiter 😉

    1. Webtimiser

      Hallo Andreas,
      super, danke für die Ergänzung!
      VG Sonia

Schreibe einen Kommentar

Menü schließen