plugin-icon

Use Google Libraries

Allows your site to use common javascript libraries from Google's AJAX Libraries CDN, rather than from WordPress's own copies.
Ratings
4.4
Last updated
May 3, 2017
Version
1.6.2.3
Active installations
10K

A number of the javascript libraries distributed with WordPress are also hosted on Google’s AJAX Libraries API. This plugin allows your WordPress site to use the content distribution network side of Google’s AJAX Library API, rather than serving these files from your WordPress install directly.

This provides numerous potential performance benefits:

  • increases the chance that a user already has these files cached
  • takes load off your server
  • uses compressed versions of the libraries (where available)
  • Google’s servers are set up to negotiate HTTP compression with the requesting browser

For a more detailed look see Dave Ward’s 3 reasons why you should let Google host jQuery for you.

Supported Libraries and Components

Links

Incompatible Plugins

Better WordPress Minify

Better WordPress Minify version 1.2.2 does not yet support protocol-relative URLs, but the next release is supposed to correct this.

Gravity Forms

I’ve had reports of Gravity Forms breaking UGL, but I don’t have access to Gravity Forms, so I’m not sure what’s going on. If you need Gravity Forms you might need to disable UGL, or it might be fine, I’m not really sure.

WP-Minify

WP-Minify doesn’t yet support protocol-relative URLs. Add ‘//ajax.googleapis.com/’ as a JS and CSS exclusion.

Incompatible Themes

K2

I’ve had scattered reports that UGL is stepping out of the way when using K2.

A Request

If you’re going to flag the plugin as “broken” in the WordPress Plugin Directory, please try and let me know what is broken. I’m not a mind reader.

Technical Details

Use Google Libraries uses the following hooks (each with a priority of 1000).

wp_default_scripts

Use Google Libraries compares it’s list of supported scripts to those registered, and replaces the standard registrations src with ones that point to Google’s servers. Other attributes (like dependencies) are left intact.

script_loader_src

Use Google Libraries removes the ver=x.y.z query string from the URL used to load the requested library if it is going to load the library from ajax.googleapis.com. Otherwise the URL is left unaltered. This both improves the chances of the given URL already being cached, and prevents script.aculo.us from including scripts multiple times.

If jQuery is enqued Use Google Libraries will inject a bit of javascript before the next enqueued script enabling jQuery’s noConflict mode as it would with the standard WordPress version.

References

Parts of this plugin (specificly, the dropping of the micro number, which has since been removed for better caching performance) were inspired by John Blackbourn’s Google AJAX Libraries, which has very similar goals to this plugin.

Future Plans

  • add ability to disable protocol relative URLs
  • add ability to disable on frontend and/or admin
Freeon Creator plan
Active installations
10K
Tested up to
4.7.28
This plugin is available for download to be used on your WordPress self-hosted installation.