Magento extension to move all JavaScript to the end of the page
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
src/app Version bump Jul 20, 2017
LICENSE.txt Add GPL license. Dec 23, 2013 Readme updated with event that is now listened to. Apr 15, 2016
composer.json Fixed unintentional name change, readded modman Jul 20, 2017
modman Fix for modman Jul 20, 2017

Magento Footer JS

A common web development technique to improve page load times is to move JavaScript to the end of the page. A common frustration for frontend Magento developers is the inability to do this due to the amount of inline JavaScript found in templates.

This extension observes for the core_block_abstract_to_html_after event, removes any javascript it finds and appends it to the end of the body.

Tested against:

  • CE 1.9
  • EE 1.14 (inc FPC)


Enable the extension in System > Configuration > Advanced > Developer > JavaScript Settings > Move JavaScript to Footer.

Add name of blocks with JS which must not be moved to footer in System > Configuration > Advanced > Developer > JavaScript Settings > FooterJS Excluded Blocks. Enter block names separated with a comma. Please note, JS libraries are moved to footer so be careful excluding JS which has dependencies.

Also there is another way to exclude some JS from moving to the footer - add attribute data-footer-js-skip="true" to script tag. Currently there is no way to exclude JS added using addJs/addItem in layout.


Copyright (C) 2015 Tom Robertshaw

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see