To follow up on our post about editing Magento’s top links, I thought I might as well write an article about editing the footer links while I’m at it. I’d recommend reading our post about using a local.xml file before getting started on this post. This post might not make much sense until you read it. [NOTE: This specific example assumes you are using the blank theme. Layout handles may differ from theme to theme.]
In local.xml:
<?xml version="1.0"?> <layout version="0.1.0"> <default> <reference name="footer_links"> <!-- Add custom links. Pretty self-explanatory. Dig into app/code/core/Mage/Page/Block/Template/Links.php for more info --> <action method="addLink" translate="label title"> <label>About Us</label> <url>about</url> <!-- can use a full url if not using urlParams below --> <title>About Us</title> <prepare>true</prepare> <!-- set true if adding base url param --> <urlParams helper="core/url/getHomeUrl"/> <!-- base url - thanks @Russ! --> <!-- there are a few param you can send to do different things in <urlParams> dig into app/code/core/Mage/Core/Model/Url.php, around line 803 --> <!-- below adds #add-fragment to the end of your url --> <!-- <urlParams><_fragment>add-fragment</_fragment></urlParams> --> <!-- below adds ?add-query to the end of your url --> <!-- <urlParams><_query>add-fragment</_query></urlParams> --> <!-- below gives you a new session id (i think...)--> <!-- <urlParams><_nosid>true</_nosid></urlParams> --> <!-- below replaces double quotes, single quotes, greater than, and less than signs to their respective url escaped replacements (%22, %27, %3E, %3C) --> <!-- <urlParams><_escape>i'm-a-blog-url</_escape></urlParams> --> <position>1</position> <liParams/> <aParams>class="top-link-about-us"</aParams> <beforeText></beforeText> <afterText></afterText> </action> <!-- Remove 'Site Map' Link - Default Position: 10 Original link adding in catalog.xml --> <action method="removeLinkByUrl"><url helper="catalog/map/getCategoryUrl" /></action> <!-- Remove 'Search Terms' Link - Default Position: 20 Original link adding in catalogsearch.xml--> <action method="removeLinkByUrl"><url helper="catalogsearch/getSearchTermUrl" /></action> <!-- Remove 'Advanced Search' - Default Position: 30 Original link adding in catalogsearch.xml--> <action method="removeLinkByUrl"><url helper="catalogsearch/getAdvancedSearchUrl" /></action> <!-- Remove 'Contact Us' link - Original link in contacts.xml <!-- Best bet to go to Magento's Admin > System > Configuration > (left sidebar) Contacts > Contact Us Enabled = NO --> <!-- You can pass the full url, which is a hassle if you have dev and stage sites --> <action method="removeLinkByUrl"><url>http://YOUR_SITE.com/contacts/</url></action> <!-- see comments below for making a custom helper to remove contacts link no matter what your base url is --> </reference> <!-- By default, Magento sets a static footer block. Find it in the admin under CMS > Static Blocks. <reference name="footer"> <!-- Remove Magento's default static block and use the 'addLink' method above to add your custom and inline links. I use the 'unsetChild' method as often as possible as opposed using the more final <remove name="cms_footer_links"/> just in case I want to add the block somewhere else --> <action method="unsetChild"><name>cms_footer_links</name></action> <!-- Remove all the other Magento links - "Site Map, Search Terms, Advanced Search, and Contact Us" --> <action method="unsetChild"><name>footer_links</name></action> <!-- Magento 1.4.x --> </reference> </default> </layout>
If all else fails, you can edit template/page/template/links.phtml. However, if you can make all your changes in local.xml, your life will be so much easier when it comes to upgrading Magento and making future edits.