views:

912

answers:

6

hi there,

My wordpress site is a bit heavy to download. On the frontend, its including jquery unnecessarily. In my firebug it looks like:

jquery.js?ver=1.3.2 and jquery.form.js?ver=2.02m

I don't need these to be included for me.

I'm happy for them to remain in the wp-admin, but I'd like them not to load on the frontend.

I have found the file I think which is loading them in wp-includes/script-loader.php but I'm not sure what to uncomment out or what to do to remove it completely for the front.

Is there a way to do this, removing jquery without ruining the back end?

+2  A: 

Look into your theme files.

wp-content/themes/header.php

may include the .js files.

Ahmet Kakıcı
+4  A: 

From my understanding WordPress doesn't add them by default, check if you have a theme or a plugin that is adding the script.

Kane Wallmann
looks like you were right! it was being included in a plugin that doesn't even use the jquery! how silly of it, and me. thanks
cosmicbdog
+1  A: 

jQuery.js is just 15KB if you're using the minified version, and these would be totally absent if you were using a theme that doesn't require it.

You should probably look for a lightweight theme without jQuery instead of hacking it and then seeing the theme break in several places because they're looking for those js files.

Jon Limjap
jQuery.js is roughly that size if you use the minified version **and** you compress the data with GZip.jQuery.form.js is 22K uncompressed and unminified.
Joe Chung
15KB vs. 22KB won't be a noticeable difference, methinks.
Jon Limjap
+1  A: 

Look in the source of your rendered page; Wordpress often includes jQuery by default when <?php wp_head(); ?> is called in header.php, so you may stil see jQuery included in your site.

If you remove <?php wp_head(); ?> in header.php, you might loose other plugin functionality, as many plugins "hook" into Wordpress at that point.

But including jQuery isn't that big of a deal. It's small and Wordpress depends on it for some things.

songdogtech
+3  A: 

JQuery may be being added by your theme. If your theme is adding it properly, it should be using the wp_enqueue_script() function. To remove JQuery, simply use the wp_deregister_script() function.

wp_deregister_script('jquery');

Removing JQuery for your whole site might cause some unintended consequences for your admin section. To avoid removing JQuery on your admin pages, use this code instead:

if ( !is_admin() ) wp_deregister_script('jquery');

Now only pages that are not admin pages will run the wp_deregister_script() function.

Add this code to the functions.php file in your theme directory.

NerdStarGamer
+1  A: 

Wordpress adds this jQuery call via a template tag named , which appears in most themes, and is necessary for some plugins to work.

It could be annoying, not only because of loading, but because it might kill previously loaded jQuery, and might even get in the way of some plugins who try to load jQuery as well.

The quick fix is openning up the file header.php in your theme's directory, and adding: right before Or just combine them both into: A more technical explanation could be found here - http://falcon1986.wordpress.com/2009/07/15/remove-unwanted-wordpress-header-elements/

Adam Tal