I will like to implement a few of the boilerplate template features in one of my instance WordPress.
I am trying to figure out how to exchange the regular jquery calls below
<script type='text/javascript' src='http:/.../wp-includes/js/jquery/jquery.js?ver=1.4.4'></script>
<script type='text/javascript' src='http://.../wp-includes/js/jquery/ui.core.js?ver=1.8.9'></script>
to this:
<!-- Grab Google CDN's jQuery, with a protocol relative URL; fall back to local if necessary -->
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.js"></script>
<script>window.jQuery || document.write("<script src='js/libs/jquery-1.5.1.min.js'>x3C/script>")</script>
You should be loading jQuery with
wp_enqueue_script('jquery')
– that way, you won’t end up with multiple instances if plugins try to load it too.To use Google CDN, place this in your
functions.php
;Update: Personally, and I know this sounds like a cop-out, but I wouldn’t bother checking the CDN. Google is just so damn reliable, and it’s more than likely it’s already in the user’s browser cache anyway (so many sites use Google’s CDN).
However, in my duty to answer, you have one of two options;
The trouble with 2) is that you need to inject this script right after jQuery, and before any other plugins that depend on it fire their scripts. The only way I know you can do this is to ‘listen’ for jQuery, then output the JavaScript on the next call.
The magic? Drop this in your
functions.php
;For those in the know, this is also hooked to
wp_head
right afterwp_print_scripts
would have fired, in case there were no more scripts to print afterjquery
(the function does it’s work on the next call, rather than the instance it is called with jQuery).For WordPress 4.5.0 + :
wp_add_inline_script()
#Note : Change the version and your own local jQuery source.
Two things to keep in mind about this answer:
“`
“`
Notice that I’m still using WordPress’ dependency management system. Also, sets HTTPS vs HTTP using
is_ssl()
to avoid mixed content errors, and lets WordPress dictate version number.