OMGF | GDPR/DSVGO Compliant, Faster Google Fonts. Easy.

Wordpress Plugin
Download latest - 5.5.1

Developers

DaanvandenBergh

Download Stats

Today 6,068
Yesterday 46,097
Last Week 87,780
All Time 2,110,478
Banner 772x250

How could using fonts via Google's service possibly run afoul of GDPR? The fact of the matter is that, when a font is requested by the user's browser, their IP is logged by Google and used for analytics. Lifehacker

Leverage Browser Cache, reduce DNS lookups/requests, reduce Cumulative Layout Shift and make your Google Fonts 100% GDPR compliant with OMGF!

OMGF is written with performance and user-friendliness in mind. It uses the Google Fonts API to automatically cache the fonts your theme and plugins use to minimize DNS requests and speed up your WordPress website.

How Does It Work?

After installing the plugin, OMGF will automatically start looking for Google Fonts whenever a page is requested on your website.

All Google Fonts are listed in the Optimize Local Fonts section of OMGF's settings screen. There, you can choose to:

  • Preload fonts to reduce Cumulative Layout Shift above the fold,
  • Unload fonts that're not used by you, your theme and/or plugins,
  • Set a Fallback Font Stack (OMGF Pro required), to further reduce Cumulative Layout Shift, or
  • Replace (OMGF Pro required) font-families with system fonts to speed up loading times!

Other Features include

  • Variable Fonts support,
  • Automatically Remove unused subsets to reduce the size of the CSS stylesheet with ~90%!
  • Remove Resource Hints (preload, preconnect, dns-prefetch) pointing to fonts.googleapis.com or fonts.gstatic.com,
  • Ensure text remains visible during webfont load by forcing the font-display attribute to your Google Fonts,
  • Ensure text remains visible during webfont load by forcing the font-display attribute to all your other fonts! (OMGF Pro required),

Additional Features in OMGF Pro

  • Multisite support,
  • "Dig deeper" to find Google Fonts and optimize further. OMGF Pro supports:
    • @font-face and @import statements inside inline <style> blocks,
    • @font-face and @import statements inside local stylesheets loaded by your theme and/or plugins,
    • Web Font Loader (webfont.js),
    • Early Access Google Fonts.
    • Material Icons support.
  • Modify your fonts' src: url() attribute fully integrate with your configuration,
    • Use this to serve fonts and the stylesheets from your CDN, or
    • To serve fonts from an alternative path (e.g. when you're using Security through Obscurity plugins like WP Hide, etc.), or
    • Set a relative path to easily migrate from development/staging areas to production/live, or
    • Anything you like!

Purchase OMGF Pro | Documentation | Tested Plugins & Themes


Releases (124 )

Version Release Date Change Log
5.5.1 2022-12-14

| December 14th, 2022 = * Fixed: ArgumentCountError: array_intersect() expects at least 1 argument, 0 given. * Improved: don't show "optimization success" message if Auto-configure Subsets needs to run again.

5.5.0 2022-12-05

| December 5th, 2022 = * Added: 'omgf_optimize_run_args' filter to allow adding attional GET-parameters before running optimization. * Improved: always use protocol relative ('//' instead of 'https://') URLs when generating and loading stylesheets to avoid SSL- and permalinks related quirks in WordPress. * Added: Auto-Configure Subsets feature and moved the Used Subset(s) option to the Advanced Settings tab. * Added: compatibility for WP.com's "GDPR compliant" Google Fonts API. * Fixed: Array to string conversion in PHPH 8.1 while escaping arrays.

5.4.3 2022-11-07

| November 7th, 2022 = * Tested with WP 6.1 * OMGF will now warn you when it detects you're using the following scripts loading Google Fonts in iframes: - Active Campaign - Channext - Conversio - Gastronovi - Google Campaign Manager 360 - HubSpot - ManyChat - Tidio * Improved: Success message if no conflicts were detected to clarify the use of the Task Manager. * Improved: Notify users that they have to "Mark" possible detected conflicts as "fixed" themselves. * Improved: Bad Requests (400) to the Google Fonts API are now removed from the source code. * Improved: trim invalid characters from end of requests to the Google Fonts API. * Added: compatibility with Mesmerize theme.

5.4.2 2022-10-18

| October 18th, 2022 = * Added: Groovy Menu compatibility * Added: OMGF now shows a dismissable warning when you're selecting a lot of preloads. * Fixed: Cannot use object as array error. This error would be thrown if OMGF temporarily failed to fetch Google Fonts. * Fixed: Not all implementations of Google Maps were properly recognized by the Task Manager. * Fixed: some debug information was always generated, even when Debug Mode wasn't enabled.

5.4.1 2022-10-12

| October 12th, 2022 = * Added: make the Auto-Configure Adv. Processing notice under Detection Settings more noticable. * Added: Show info box in Task Manager when Test Mode is enabled. * Fixed: Links to theme compatibility documentation was broken.

5.4.0 2022-10-10

Codename: Einstein | October 9th, 2022 = * Fixed: if permalinks were outdated after setting up SSL, stylesheets would contain non-SSL links to the font files, causing Mixed Content and CORS errors. * Fixed: when running Perfmatters' frontend script manager, OMGF would break the page. * Added: "Warnings" section to Task Manager, which will refer users to specific parts of the documentation in the following situations: - When using a theme which requires additional configuration to be compatible with OMGF, - When using a theme which uses exotic Google Fonts implementations (WebFont Loader, @import statements, etc.), - When embedded content (iframes) loading Google Fonts found, like Google Maps, Youtube, etc. * Fixed: preloaded Google Fonts stylesheets would be removed, breaking styling for plugins/themes using the

5.3.9 2022-09-22

| September 22nd, 2022 = * Fixed: v5.3.7 introduced a bug affecting only users of the Jupiter theme only. The needed compatibility fixes wouldn't run on Save & Optimize.

5.3.8 2022-09-21

| September 21st, 2022 = * Fixed: Since Latin Extended is an addon for Latin, it shouldn't be allowed to select it by itself in the Used Subset(s) option. * Added: Compatibility fix for Logo Carousel (Pro), which (like Category Slider Pro for WooCommerce) adds a random unique identifier to Google Fonts stylesheets on each pageload. Why? Does it hate cache? :'-(

5.3.7 2022-09-14

| September 14th, 2022 = * Added: output_array() debug function to allow printing arrays in the debug log. * Fixes: Cannot use output buffering in output buffering display handlers * Added: Mesmerize theme compatibility * Fixed: decode any special HTML entities to make sure all parameters in the URL are properly parsed. * Improved: Preload option is now reworded to Load Early, because many people seemed to confuse it with "Download" * Improved: Do Not Load is shortened to Don't Load * Improved: Manage Optimized Fonts is reworded to Optimize Local Fonts and the Optimize Fonts tab is reworded to Local Fonts to make more sense as to what its purpose actually is. * Fixed: Similar stylesheets would sometimes be replaced twice, causing layout breaks. * Fixed: if there are no options on the page, the Save Changes button is now disabled. * Added: omgf_admin_optimize_verify_ssl filter for local development areas. * Added: omgf_frontend_process_before_ob_start filter so other plugins (hint: OMGF Pro) have a proper way to execute only when OMGF is allowed to run. * Added: compatibility fix for Category Slider Pro for WooCommerce (@see: https://wordpress.org/support/topic/adds-a-unique-identifier-to-google-fonts/) * Added: Refresh Cache button in Task Manager.

5.3.6 2022-08-10

| August 10th, 2022 = * Added: compatibility for Download Manager and other plugin who insert stylesheet into the head using multiple lines. * Added: omgf_generate_stylesheet_after filter. * Added: omgf_optimize_fonts_object filter.

5.3.5 2022-08-02

| August 2nd, 2022 = * Fixed: use a more reliable regular expression to detect Google Fonts. * Fixed: Divi/Elementor compatibility is now disabled by default. * Added: DB migration script which invalidates the current stylesheets, if they don't confirm to the new standards yet. * Fixed: always allow debug log file to be deleted from the admin screen. * Fixed: filestat() failed-warning when enabling Debug Mode for the first time.

5.3.4 2022-07-22
  • Fixed: Debug Mode wouldn't stop logging at 1MB.
  • Fixed: "No log file available for download" message would show when Debug Mode was disabled under Advanced Settings.
5.3.3 2022-07-22
  • Added: Debug Mode with an option to download the log file. Stops logging when file exceeds 1MB for those who forgot to disable it.
  • Fixed: Prevent array to string conversion with new Used Subset(s) option by writing defaults to the database: Latin, Latin Extended.
  • Added: debug logging points in OMGF_Optimize class.
  • Fixed: decode HTML entities in the URL before fetching the stylesheet from the Google Fonts API.
  • Fixed: stricter matching for font-family detection, to prevent similar font names (e.g. Roboto and Roboto Condensed) from getting mixed up in the stylesheet.
  • Fixed: minor performance optimization in OMGF_Optimize class.
5.3.2 2022-07-20
  • Fixed: updated static version to force a browser cache refresh of admin JS files.
5.3.1 2022-07-20
  • Fixed: Update notices should never be cached.
5.3.0 2022-07-20

| July 20th, 2022 = * Added: Removed Google Webfonts Helper API and implemented a custom Web Font Loader. This adds/fixes: * Added: full support for Variable Fonts * Fixed: Proper (WOFF2) compression, so files generated by OMGF are no longer bigger than files downloaded from the Google Fonts API. * Fixed: The (broken capital A) compression bug is fixed! * Fixed: Changed logo in Help section to Daan.dev logo * Fixed: Remove unused subsets from Optimized Fonts object to reduce db size * Fixed: OMGF_Optimize class will bail earlier, if files and stylesheets already exist, to reduce execution time in the frontend. * Fixed: Invalid Google Fonts API requests (e.g. without a family parameter) are removed from the HTML. * Fixed: A stricter regulax expression is used for matching stylesheet link elements, to prevent backtracking. * Added: Used Subset(s) option, which allows users to specify which subset(s) they'd like to use when generating stylesheets and down-/preloading (variable) font files.

5.2.2 2022-06-28

| June 28th, 2022 = * Fixed: updated links from ffw.press to daan.dev after the migration.

5.2.1 2022-06-25

| June 25th, 2022 = * Fixed: shorthand syntax (r,i,b,bi) is now parsed correctly. * Added: Basic Variable Fonts support (full support coming in 5.3.0!) * Fixed: "preload" attributes added by 3rd party plugins would somehow be misunderstood as preload resource hints. * Deprecated: Force Subsets (Pro) and Include File Types (Pro) are marked as deprecated in preparation for the upcoming release which includes full Variable Fonts support, rendering these options useless.

5.2.0 2022-06-14

| June 14th, 2022 = * Added: toggle to disable Elementor/Divi compatibility fixes. * Fixed: when resource hints (e.g. preloads) were located in unusual places (e.g. Themify Builder places its preloads above the <title> element) this would cause other elements (e.g. stylesheets) to be removed as well.

5.1.4 2022-06-06

| June 6th, 2022 = * Tested with WP 6.0 * Fixed: Font-weights weren't properly detected when stylesheets were loaded using Variable Fonts (CSS2) API. * Fixed: jQuery.fn.submit() shorthand is deprecated. * Fixed: Improved compatibility with servers using Nginx reverse proxy. * Fixed: Filter duplicate font-family requests in same Google Fonts request, e.g. fonts.googleapis.com/css?family=Roboto|Roboto. * Added: Workaround for Elementor to identify unique Google Fonts stylesheets, because Elementor always uses the (annoyingly generic) 'google-fonts-1' handle as an identifier. :-/ * Fixed: Generate a 'unique' identifier for each stylesheet without an identifier ('id' attribute) * Several minor performance improvements.

5.1.3 2022-05-23
  • Added: workaround for Divi builder to identify unique Google Fonts stylesheets.
  • Added: extra links to documentation in Manage Optimized Fonts section.
  • Fixed: Changed links to new documentation hub.
  • Fixed: don't use WP_Filesystem to get and put file contents.
5.1.2 2022-04-08
  • Fixed: Minor performance improvement - content_url() is no longer used to generate download file URLs.
  • Rewrote Modify Source URL option's description.
5.1.1 2022-04-08
  • Fixed: using print_r() in an output buffer caused 500 errors.
    • Removed the remaining (one) entries of OMGF::debug, because of this and Test Mode now allows for much user-friendly testing, anyway.
    • the OMGF::debug() wrapper is still there for hardcore in code debugging.
  • Several code tweaks and fixes.
5.1.0 2022-03-30
  • Added: Test Mode, which allows you to test optimizations before releasing them to the public. This option replaces Optimize for Logged-in Administrators/Editors.
  • Fixed: several minor tweaks.
5.0.6 2022-03-21
  • Added: Removed Cache Directory in favor of an automatic approach to improve UX, because most people didn't change the default value anyway.
    • I.e. all files generated by OMGF are stored in a subdirectory of the Uploads folder (default wp-content/uploads), called omgf.
    • For most of you nothing will change, but omgf_upload_dir and omgf_upload_url filters are available for DEVs who want to modify the default value, although I really can't think of a reason why you'd want to do that.
  • Reworded description of Optimize for logged-in Administrators/Editors option.
5.0.5 2022-03-14
  • Added: Compatibility with Mesmerize Pro theme; this theme loads Google Fonts asynchronously, which causes CLS.
  • Added: UNIX timestamp cached stylesheets to make sure browser cache of visitors is busted, upon cache refresh.
  • Fixed: Running Save & Optimize a 2nd time could trigger some firewall rules, due to the serialized array being passed along with the settings form's POST action. This serialized array is now stored in the form using base64_encode() and decoded before being saved to the database.
  • Fixed: Since the Google Fonts API has removed the subsets paramater and returns all subsets by default, OMGF now does the same. Unlike the Google Fonts API, OMGF does still respect and apply the parameter if it set, because it is still used by many themes and plugins.
    • Re-worded Force Subsets (Pro) featured to clarify this behavior.
  • Fixed: Some resource hints that were added using unconventional methods (i.e. not using wp_resource_hints()) weren't removed.
  • Fixed: If no regular Google Fonts stylesheets were present, the omgf_processed_html filter would never be triggered.
  • Fixed: Stylesheets on AMP pages would be rewritten to local stylesheets, while this is not supported by AMP.
  • Removed: AMP handling (Pro) option from Advanced Settings, because it's no longer supported by AMP.
5.0.4 2022-03-07
  • Fixed: don't allow starting buffer twice.
5.0.3 2022-03-07
  • Fixed: always run if omgf_optimize parameter is set.
5.0.2 2022-03-07
  • Fixed: Use Site Address (URL) to run first optimization scan, instead of WordPress Address (URL), because the WordPress install URL can differ from the frontend URL.
  • Fixed: Make sure stylesheet URL is properly decoded and HTML entities, etc. are removed, before attempting to process it. (This would cause parameters, like subset or display, to get lost).
  • Added: omgf_optimize_query_subset filter to OMGF_Optimize class.
5.0.1 2022-03-06
  • Fixed: Previous versions of OMGF would save stylesheet handles without the appended '-css' string. This is now brought back to guarantee a smooth transition to v5.
  • Fixed: If ?nomgf=1 parameter was set, preloads would still be loaded.
  • Fixed: Added an extra check if file exists, before adding font files for preloading.
  • Enhanced: A small speed boost for Save & Optimize.
5.0.0 2022-03-04
  • The Better, Bigger, Faster, Stronger, Cooler, Awesomer Edition | March 4th, 2022 =
  • Added: Parse entire HTML document for Google Fonts stylesheets (instead of just wp_head())
  • Added: Merged both Optimization Modes option into one automatically running option: - A first scan is done upon Save & Optimize, - A quick check is done on pageload, to see if other Google Fonts are found than the ones already found, and if so, they're downloaded and replaced on-the-fly.
  • Enhanced: The Download API is replaced for an easier, leaner and faster alternative and no longer uses the WordPress API. - If the first request fails, a mirror is used to retry the request, before throwing an error. - Fixes rest_no_route errors in some configurations.
  • Enhanced: The Task Manager now offers a quick overview of downloaded stylesheets and their status, along with simple management tasks, e.g. cache flush, configure stylesheet and/or remove. - When cache is marked as stale, it's now possible to refresh the cache and maintain your stylesheet configuration.
  • Added: Resource hints enqueued in wp_resource_hints() are now properly removed.
  • Fixed: Smart Slider 3 compatibility.
  • Several bugfixes, UX improvements and code optimizations.
4.6.0 2022-02-16

| February 16th, 2022 = * Fixed: Loading spinner wasn't center aligned. * Added: Force Optimization Mode Task Manager. - Offers an easy overview of downloaded stylesheets and where they're stored, - Indicates stale cache files. * Added: Clearer explanation of when to use Scan Posts/Pages VS Force Optimization Mode. * Fixed: Cache handles weren't removed when cache directory was emptied. * Fixed: Tooltip in Manage Optimized Fonts section wasn't aligned properly. * Renamed: Manual Optimization Mode to Force and Automatic to Scan Posts/Pages.

4.5.19 2022-02-05

| February 5th, 2022 = * Fixed: Use of undefined constant in OMGF_Admin_Settings_Help class.

4.5.18 2022-02-04
  • Fixed: use of undefined constant 'OMGF_DEBUG_MODE'.
4.5.16 2022-02-02

| February 2nd, 2022 = * Fixed: WP 5.9 welcome banner removed from Help section. * Added: Basic debugging throughout the plugin (can be enable by setting the OMGF_DEBUG_MODE constant to true); * Fixed: Updated handle was overwritten by empty value if cache key wasn't defined. * Added: More user friendly error messages. * Fixed: "Handle not provided" error should not kill the entire Download API process (post OMGF v4) * Pro Feature: Fallback Font Stacks can now Replace an entire Google Fonts font-family.

4.5.15 2022-01-26

| January 26th, 2022 = * Tested with WP 5.9 - Fix: WP 5.9 welcome banner displayed in Optimized Fonts Manager section.

4.5.13 2022-01-04

| January 4th, 2022 = * Sec: Properly check permissions when Download API is accessed.

4.5.12 2021-11-27

| November 27th, 2021 = * Sec: Prevent path traversal when cache directory setting is changed. (Thanks, @jsgm!)

4.5.11 2021-11-17

| November 17th, 2021 = * Doc: Updated links to fancy new documentation hub: docs.ffw.press * Dev: Added $font_family to omgf_alternate_api_url filter. * Dev: Added filter to detect_registered_stylesheets(). * Fix: disable preload/unload when opposite checkbox is checked. * Fix: Updated RSS feed URL and properly encode retrieved XML to prevent parse error simplexml_load_string(). * Promo: Added force font-display promo material.

4.5.10 2021-10-17

| October 18th, 2021 = * Enhancement: API now cleans up excessive spacing and + symbols in requests before fetching fonts. This comes in handy when e.g. @import statements in CSS stylesheets are auto-formatted by IDEs. * Fix: API would crash when Google Fonts request turned up empty. * Fix: Added proper error handling for when downloading fonts failed. * Doc: Added link to Troubleshooting Guide to Help tab.

4.5.9 2021-10-05

| October 5th, 2021 = * Fix: content_url() should always be encoded, also if file already exists. * Enhancement: If stylesheet is already generated, stop execution to decrease API request time.

4.5.8 2021-09-29
  • Fix: use array_merge() to prevent unsupported operand types error.
4.5.7 2021-09-28

| September 29th, 2021

4.5.6 2021-09-20
  • Fix: Added Fallback API URL for when Google Fonts Helper is down.
  • Enhancement: Added extra error handling in Manual Optimization Mode.
  • Fix: API requests made in Manual Optimization Mode are no longer forced to SSL. It now uses the protocol configured in Settings > General > WordPress URL.
  • Fix: Stylesheet handles containing spaces would prevent Optimize Google Fonts screen from rendering properly.
  • Several refactors and code optimizations.
4.5.5 2021-08-18
  • Fix: Prevent collision with other plugins when authenticating AJAX-calls.
4.5.4 2021-08-18

| August 18th, 2021 = * Security: Access to the Download API now requires a valid nonce to prevent CSRF. * Security: Added authentication to Empty Cache Directory AJAX-call.

4.5.3 2021-08-17

| August 17th, 2021 = * Fix: "Too few arguments to function OmgfPro_Frontend_AutoReplace::passthru_handle()" would occur if OMGF Pro was updated to v2.5.1 before OMGF was updated to v4.5.2.

4.5.2 2021-08-16

| August 16th, 2021

4.5.1 2021-08-02

| August 2nd, 2021 = * Enhancement: Added post update notice to inform user of the plugin's database changes. The current notice you were viewed was simply, because the current DB version wasn't logged yet on your system. So if you're reading this: Ha! Made you look! ;) * Pro Feature: Added promo material for Fallback Font Stack (Pro) feature. * Enhancement: moved Stylesheet Generator to its own backend API. * Enhancement: moved Font Downloader to its own backend API. * Enhancement: Updated description of Optimization Modes. * Fix: Fixed glitch in footer news ticker. * Enhancement: Added several filter and action hooks to allow a more seamless integration with OMGF Pro and OMGF Additional Fonts. * Several code and performance optimizations.

4.5.0 2021-07-28

| July 28th, 2021 = * [Removed] WOFF2 only option is superseded by Include File Types option, only available in OMGF Pro. * [Removed] CDN URL, Cache URI and Relative URL options are combined into Fonts Source URL option, only available in OMGF Pro. * [Removed] Optimization Mode > Automatic is only available in OMGF Pro. * Tested with WordPress 5.8 * Several code optimizations.

4.4.4 2021-07-14
  • Fixed logo for Safari compatibility.
  • Added updaten notices for future important updates.
4.4.3 2021-06-07
  • Fixed a few warnings/notices.
  • Re-worded some options and option descriptions.
4.4.2 2021-04-23
  • Upped static version of Admin CSS files.
4.4.1 2021-04-23

| April 23rd, 2021 = * Fixed footer logo (load from local source instead of external URL). * Added tooltip for preload option. * Added link to OMGF Additional Fonts under Optimize tab.

4.4.0 2021-04-10

| April 10th, 2021 = * Moved sidebar to its own 'Help' tab to clean up the interface. * Manage Optimize Fonts panel is now shown inline with other options (and has its own label). * Each stylesheet's handle is now more prominently visible and the font family is better readable. * Added mass actions to each font family for easier management of each stylesheet. * Took a different approach to deal with SSL/Non-SSL for local Dev environments. * Performance improvements to manual detection mode (decreased risk of timeouts!) * Overall UX tweaks and performance improvements.

4.3.2 2021-04-05

| April 5th, 2021 = * Fixed MIME type (X-Content-Type-Options: nosniff) related errors when using Download API. * When site is not using SSL, SSL verification (sslverify) is disabled while contacting the Download API. * When OMGF Pro is running in Automatic Mode, only preloads for the currently used stylesheet are loaded.

4.3.1 2021-03-29

| March 29th, 2021 = * Added Mukta (FKA Ek Mukta) to list of renamed Google Fonts.

4.3.0 2021-03-17

| March 17th, 2021 = * [FEAT] Renamed fonts will now be captured using their new name (e.g. Mulish), but remain in the stylesheet with their old name (e.g. Muli) to prevent manual changes to the stylesheet after optimization. * [FEAT] Added Load WOFF2 Only option. * Small code optimizations in Download API's code.

4.2.8 2021-03-12

| March 12th, 2021 = * [FIX] Strings with a + instead of a space would returned errors in the API.

4.2.7 2021-03-10

| March 10th, 2021 = * Addding ?nomgf=1 to any URL will now temporarily bypass fonts optimization, which allows for easier debugging.

4.2.6 2021-03-06

| March 6th, 2021 = * Tested with WP 5.7 * [FIX] All fonts would be loaded, when all fonts of one font-family were checked for unloading. * [FIX] Fixed some notices and warnings. * Added compatibility for OMGF Pro's Early Access compatibility. * OMGF's admin JS is now only loaded on OMGF's settings screens. * [FIX] Fixed bug where Italic 400 fonts couldn't be unloaded.

4.2.5 2021-01-27

| January 27th, 2021 = * Improved compatibility with WordPress subdirectory installs. * Implemented some actions/filters needed for upcoming release of OMGF Additional Fonts. * Fixed duplicate preload ID's issue. * Fixed some notices/warnings. * Minor UX improvements.

4.2.4 2020-12-08

| December 8th, 2020 = * Cache keys are now fixed values instead of dynamically generated. This fixes the bug where preloads wouldn't load properly when combined with unloaded fonts of the same stylesheet. * IMPORTANT: To fix any bugs with preloads/unloads, emptying the cache directory is required. * Cleaned up the sidebar and added a notification to reassure people that no features were moved from Free to Pro after upgrading to v4. * Advanced Processing can now be disabled even when OMGF Pro is active. Before it was always on (accidentally). * When preload is enabled for a font style, its associated unload checkbox is disabled and vice versa. * Minor fixes, increased usability and optimizations.

4.2.3 2020-10-08
  • Fixed invalid preload header,
  • Fixed warning: array_keys() expects parameter 1 to be array, null given when multiple stylesheets are loaded, but preloads are only enabled for one of them.
4.2.2 2020-10-08
  • Small fix for themes/page builders which requests Google Fonts with protocol relative URI i.e. '//fonts.googleapis.com' instead of 'https://fonts.googleapis.com'.
    • Tested with Elementor. Works.
4.2.1 2020-10-07
  • OMGF now checks secure (https://) and non-secure (http://) requests to Google Fonts, because apparently some themes still do that, even though it's 2020, but whatever.
    • Tested with Divi and Bridge Theme. Works.
4.2.0 2020-10-07

| The What-4.0-should've-been Edition | October 7th, 2020 = * IMPORTANT NOTICE: If you're upgrading from v4.x.x it's required to Empty your Cache Directory. Otherwise the Optimized Google Fonts Overview will not work. * Added CSS2 (Variable Fonts) compatiblity, * No more spaces in filenames of downloaded fonts, * Added Optimize Fonts tab, which resembles the 'Generate Stylesheet' tab from v3, and features, * Optimization Mode: Manual or Automatic, * If Manual is selected, the URL can be specified which should be scanned for Google Fonts, * A complete overview of all detected fonts, grouped by stylesheet, * Options to preload or unload for each font. * Move settings to more sensible places and re-grouped them in 3 groups: * Optimize Fonts, * Detection Settings, * Advanced Settings. * OMGF will now throw a notice when a settings is changed which requires the cache to be flushed. * Several tweaks and fixes in OMGF's Auto Detection mechanism and Fonts Download API. * Fixed issue where OMGF wouldn't detect fonts in weight 400 (and 400 italic). * Major UX improvements, * Pros and Cons of each Optimization Mode are outlined upon selection, * Show loaded while actions are taking place, * Cleaned up sidebar and added a clear overview of available documentation. * Several tweaks and optimizations in overall performance.

4.1.3 2020-10-01
  • Fixed bug which would continuously show 'No fonts founds' notice in admin, among others.
  • Increased compatibility with caching plugins, which would cause static pages to be served and block OMGF from pointing requests to its Download API.
  • Added some notices (which disappear ;-)) for manual optimization process in admin area, making it clear when optimization is finished.
4.1.2 2020-10-01
  • Attempt to fix syntax error (unexpected ')' on line 147).
4.1.1 2020-09-30
  • Use transients instead of options.
  • Fixed some minor notices and warnings.
4.1.0 2020-09-30
  • Added some on-boarding to ease the use of the new interface.
    • OMGF will now show a notice in the admin area, if the optimization never ran, to increase UX.
    • Added a loader when any of the following actions are triggered:
    • Empty Cache Directory
    • Start Optimization
  • Minor tweaks and optimizations.
4.0.2 2020-09-30
  • Fixed bug where OMGF would trigger too late for the requests to fonts.googleapis.com to be captured.
4.0.1 2020-09-30
  • The tiniest bugfix ever: one space too much in a str_replace() caused Font Names with spaces (e.g. Roboto Condensed, or Open Sans) to not be captured correctly.
4.0.0 2020-09-30

| September 30th, 2020 = * OMGF now runs fully automatic to replace/remove Google Fonts from your pages using OMGF's new Download API. No initial configuration required! * This means that if you use different fonts on different pages, all of them will be cached and served locally. * HUGE performance increase in OMGF's automatic replacing/removing methods. * Major overhaul of Settings Page: * Removed Extensions Tab * Some settings were moved to a new tab: Basic Settings. * Improved Welcome and Documentation tab. * Clarified option descriptions. * Removed 'Generate Stylesheet' tab, which'll be released in a separate (free) add-on plugin soon. * Removed 'Use Web Font Loader?' option, because it causes Cumulative Layout Shift and will not work with OMGF's new Auto Replace feature. * Removed 'Remove Version Parameter' option, because it has become obsolete. The new detection method uses the initial script's version, if set. * Font Preloading is temporarily removed and will be re-introduced (in a different form, along with new features) in a later release.

3.8.2 2020-08-27
  • Fixed notice: invalid operand type.
3.8.1 2020-08-27

| August 27th, 2020 = * Bugfix: if Auto Remove was enabled, but no stylesheet was yet generated, this would break some themes' stylesheet.

3.8.0 2020-08-16

| August 16th, 2020 = * Tested with WP 5.5. * Cleaned up the sidebar. * Improved re-enqueueing of stylesheets, if a stylesheet depends on the removed Google Font stylesheet. * Pressing Enter in the Search Bar triggers search now. * Developers can now easily add functionalities to OMGF's brand new Extensions tab, using several new filters and actions. * If OMGF is used along with other WoOSH! plugins (e.g. CAOS, OMGF Pro, etc.) the same class loader is used, significantly increasing performance. * Added dates to changelog :)

3.7.0 2020-06-10
  • OMGF settings screen is now easily extendable: added filters, actions, etc.
  • Overall performance improvements and reduced code footprint.
3.6.2 2020-06-07
  • Added filter so Auto Remove can be disabled by other plugins (OMGF Pro, in this case.)
3.6.1 2020-06-07
  • Fixed bug in Auto Detect where duplicate fonts would override the earlier detected font styles. Newer styles are now appended to the list.
  • Added multiple filters and action hooks to prepare OMGF for the release of OMGF Pro.
  • Removed the code to detect incompatible themes/plugins, because an upgrade to OMGF Pro will solve all of your problems :)
    • OMGF Pro is able to detect, replace and remove all Google Fonts (incl. WebFont Loader) regardless of how they are added by the theme or plugin, incl. dns prefetch, preconnect and preload resource hint headers.
3.6.0 2020-05-30
  • OMGF now supports add-ons to extend its Auto Detect and Auto Removal feature.
  • From now on, a notice containing a link to the required add-on will be thrown for known themes and frameworks which follow unconventional methods to include Google Fonts.
    • This list now contains Thrive Themes and Redux Framework, but other themes (I'm researching Avada) will be added in the near future.
  • Generated stylesheets and downloaded fonts are now be saved to the 'uploads/omgf' folder by default.
3.5.0 2020-05-24
  • Added Force SSL option, to force the usage of SSL while generating the stylesheet.
  • Added WP Rocket to list of Evil Plugins, because it empties the entire wp-content/cache folder instead of just its own files.
3.4.5 2020-05-21
  • Preload path should include absolute url, instead of relative, to prevent issues with CDN usage.
3.4.4 2020-05-18
  • OMGF is now loaded inline with other plugins, not last. And,
  • only Auto Detect is now triggered (if enabled) after all other plugins are loaded.
  • An 'Evil Cache Plugin' warning is now thrown, when OMGF is activated and one of the Evil Cache Plugins are installed, prompting the user to move the webfonts-folder outside of the wp-content/cache folder.
  • Fixed bug where Pre Update functions weren't triggered anymore, e.g. move fonts after cache path change.
  • Minor code optimizations/clean up.
3.4.3 2020-05-11
  • Better error handling for Auto Detect.
  • Increased performance in admin area.
3.4.2 2020-05-10
  • OMGF now returns a readable error if Auto Detect detects a misformatted fonts URL.
3.4.1 2020-05-10
  • 'Optimize fonts for logged in users?' should be on by default, cause it causes to much confusion.
  • Fixed bug where Auto Detect would fail if no font styles were specified in the Google Font URL.
3.4.0 2020-05-04
  • Added 'Downloaded' indicator in 'Generate Stylesheet' tab.
  • Added 'Also optimize fonts for logged in users?' option. This means that all users with editor capabilities will (from now on) only view the optimizations when this option is checked, or when they view the frontend of the website in a private/incognito browser session.
3.3.6 2020-04-30
  • Modified preload feature to comply with Mozilla's regulations for the crossorigin attribute.
3.3.5 2020-04-10
  • Minor bug and usability fixes.
3.3.4 2020-04-09
  • Fixed bug in preload.
3.3.3 2020-04-02

Added error handling for API-calls.

3.3.2 2020-03-27
  • Auto Detect is now compatible with Newspaper theme.
3.3.1 2020-03-27
  • Use WordPress' tabs system for navigation to comply with Plugin Conventions.
  • Fixed bug which caused preload font styles to be saved incorrectly.
  • Replaced separate apply buttons with one apply button, which handles the entire queue for removal as well as preload at once.
  • Known bug: 'Apply' button isn't clickable when sticky. Available workaround: scroll to the bottom of the list and click 'Apply'.
3.3.0 2020-03-25
  • Introduced a queueing system for font-styles search, preload and remove for easier management. The 'Apply' buttons now process all your changes at once.
  • The 'Apply' buttons are sticky, so they're visible for long lists.
3.1.3 2020-03-22
  • Added toggleable navigation menu. Made it a bit more UX friendly.
  • Enhanced search and auto-detect: search results of one, are now appended to the result of the other. Also, duplicate search queries are now filtered, so they will not return duplicate subset results.
3.1.2 2020-03-22
  • Comma-separated search now works better (supports ',' as well as ', ')
  • Search results are now added to the old subsets results. Allowing for more flexible search.
3.1.1 2020-03-21
  • Fixed bug in Web Font Loader.
  • Fixed bug where sometimes stylesheet would still be enqueued, even though the file didn't exist.
3.1.0 2020-03-20
  • OMGF can now rewrite the URI from where fonts are served using the 'Serve webfonts from...' setting. This is particularly useful when using seurity through obscurity (e.g. WP Hide)
  • Fixed bug where clicking 'save changes' would remove listed fonts and subsets.
  • Gave some settings more accurate descriptions.
3.0.1 2020-03-20
  • [BUGFIX] Passing glue string after array is deprecated. Swap the parameters.
3.0.0 2020-03-19

OMGF - CORONA EDITION * Moved Welcome-panel to the side. * wp_remote_get() is now used instead of cURL. * Complete code overhaul to increase performance and UX. * Notices and errors are now more explanatory and dismissable. * Fixed several bugs. * OMGF now uses wp_options table, instead of own tables. * Old tables are removed and data is migrated. * Auto detect now works better than ever. * Search now works bug free. * WordPress' default admin fonts no longer show up as results.

2.5.0 2020-02-01

Updated Welcome-panel with WoOSH!-services. Preload can now be used for certain fonts only (also combined with Web Font Loader).

2.4.1 2020-01-18

Filenames are now rewritten to be more informative and for easier debugging.

2.4.0 2020-01-18

Added option to use relative URLs in the generated stylesheet.

2.3.0 2020-01-17

Added experimental enqueue order option.

2.2.9 2020-01-08

Fixed bug that would throw excessive notices if PHP logging is enabled. fonts.css was loaded too late, so some minification plugins couldn't capture it.

2.2.8 2020-01-07

Throw clear error if any of the new tables don't exist. To prevent confusion.

2.2.7 2020-01-05

Forget to up static version after changes to Admin JS files.

2.2.6 2020-01-05

Throw errors less aggressive.

2.2.5 2020-01-05

Improved overall error handling for Auto Detect and downloading using cURL.

2.2.4 2020-01-04

Auto-detect is now loaded before 'Remove Google Fonts' and both are loaded absolute last.

2.2.3 2020-01-02

Improved UX for error message when Auto-detect doesn't work properly.

2.2.2 2019-12-22

Added long overdue migration script for options and tables. Code optimizations.

2.2.1 2019-12-20

wp-block-editor style is now ignored when detecting stylesheets that depend on Google Fonts, when the remove function is enabled.

2.2.0 2019-12-10

Added uninstall script.

2.1.6 2019-12-07

Fixed bug where tables weren't created upon installation. Moved logic to plugin activation, instead of 'plugins_loaded'.

2.0.8 2019-11-27

Fixed 400-error when re-downloading fonts. Added compatibility for Enfold-theme.

1.9.11 2019-10-08

Fixed bug where a few strings couldn't be translated. Improved responsiveness of settings-screen. Minor re-factor for better structure.

1.8.3 2019-07-30

Extended support for local source attribute.

1.7.9 2019-05-03

Cleared up instructions in Welcome Panel. Added option to remove version parameter from stylesheet request.

1.6.0 2019-02-24

Added experimental option for preload resource hint.

1.5.7 2019-02-21

Replaced download counter for progress-bar. Refactored logic for AJAX-requests for better performance.

1.1.0 2018-07-10

Fixed bug where the plugin would sometimes permanently change your upload-director to /local-fonts.

1.0.1 2018-06-27