Adding CSS / Javascript
OK, the first method is by using the Layout.xmlLAYOUT XML
As you probably already know, magento is handling the layout of the theme using XML files. These XML files is located on your layout directory (app/design/frontend/default/your_theme/layout/). OK, so, specifically in adding a javascript or css we will alter the page.xml in the said folder. Within the page.xml file you will find the <default>…</default> . This composed of <block>..</block> node that defined the page layout. Look for the block that has a child name “head” which you might noticed that contains default css and js elements.
<block type="page/html_head" name="head" as="head"> <action method="addJs"><script>prototype/prototype.js</script></action> <action method="addJs" ifconfig="dev/js/deprecation"><script>prototype/deprecation.js</script></action> <action method="addJs"><script>prototype/validation.js</script></action> <action method="addJs"><script>scriptaculous/builder.js</script></action> </block>This is the area where you need to add your javascript and css. Most important note that you need to remember when adding a javascript is that you need to store you javascript file under the “js” folder that can be found in the root of your magento installation directory. On the otherhand css files are included from the skin files of the current and default templates (skin/frontend/default/your_template(& default)/css). Ok, to add javascript file you just simply need to follow the syntax and that’s it . Boom! Javascript added. (Please see the highlighted code for the sample)
<block type="page/html_head" name="head" as="head"> <action method="addJs"><script>prototype/prototype.js</script></action> <action method="addJs" ifconfig="dev/js/deprecation"><script>prototype/deprecation.js</script></action> <action method="addJs"><script>prototype/validation.js</script></action> <action method="addJs"><script>scriptaculous/builder.js</script></action> <action method="addJs"><script>your_folder/your_js.js</script></action> <action method="addCss"><stylesheet>css/your_css.css</stylesheet></action> </block>You can also add javascript or css in a specific areas such as cart page, category page etc. But I will tell you more about that in separate article.:)
The next method is using the BLOCK CODE.
BLOCK CODE
All head block function are defined in this class Mage_Page_Block_Html_Head. So, basically we can call this function like in the following format.
$headBlockJs = $this->getLayout()->getBlock('head'); $ headBlockJs ->addJs(‘your_folder/yay.js');This method is also great but I preferably using the first one. I find the XML method simple and organized.
Removing CSS / Javascript
If there’s an addItem there also removeItem method which is the inverse method of the addItem. Please take a look at the following examples below. XML LAYOUT ( Removing Item)<action method="removeItem"><type>js</type><name>calendar/calendar.js</name</action>BLOCK CODE (Removing Item)
$this->getLayout->getBlock('head')->removeItem('js',your_folder/your_js.js');Hope this article help:). Please share..:)
2 comments:
Very helpful post!!!
Now, How we can remove css file which is come from skin folder?
extremely (any other better words than this? (; ) useful blog... very nice...
Please help us about the Specific page Javascript... Like on a specific product(s) detail page or on a Specific Category(s)
THANK you
Post a Comment