Friday 27 April 2012

show and hiddent top up menu in jquery

<html>
<head>

<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$(".flip").click(function(){
    $(".panel").slideToggle("slow");
  });
});
</script>

<style type="text/css">
div.panel,p.flip
{
margin:0px;
padding:5px;
text-align:center;
background:#e5eecc;
border:solid 1px #c3c3c3;
}
div.panel
{
height:120px;
display:none;
}
</style>
</head>

<body>

<div class="panel">
<p>Because time is valuable, we deliver quick and easy learning.</p>
<p>At W3Schools, you can study everything you need to learn, in an accessible and handy format.</p>
</div>

<p class="flip">Show/Hide Panel</p>

</body>
</html>

Thursday 26 April 2012

Magento Free Modules

Thanks to : http://visionwidget.com/inspiration/web/374-free-magento-extensions.html


Magento is a popular open source platform to built your ecommerce website. It is based on Zend Framework and has a very flexible architecture. Although it is much younger than many of its competitors, Magento has a large community of users.
Developers can easily built plugins or templates for Magento, which makes it more and more popular among open source ecommerce solutions. here are loads of great extensions for Magento to help take your internet store to the next level.
1. Remerce CMS Meta Robots Remerce CMS Meta Robots
Set the Robots Meta Tags for Cms pages
This module add the option to set the Robots Meta for CMS pages.

Go to CMS =>Manage Pages

Select a page and go to the tab "Meta Data" Under Robots you can set the Robots Meta Tag

2. Fooman Google Analytics Plus Fooman Google Analytics Plus
This is a beta release - please report how this extensions works for you.

Current improvements:

    * * Track every individual page - including sections retrieved via AJAX during one-page-checkout
    * * Track the actual typed in keywords by your user (this might not yet work due to a bug in Magento itself)
    * * Temporary solution to make your Magento install SEO friendlier via robots.txt

3. Canonical URL's for Magento  Canonical URL's for Magento
This extension adds the new canonical links to the head of your Magento pages, for a more in-depth explanation, see Yoast.com. More about Magento SEO in general at Yoast.

Note
For the new way the module gets the canonical URL at product pages it is important that Mage::getSingleton('catalog/url')->refreshRewrites(); is executed. Normally this will happen with the install of the module but please check the canonical url at your product page. If you get a 404 for this url change change the value of "add category to product url" at your backend, save, change it back and save again. Now the url shouldn't give a 404 error.

4. Advanced Sitemap  Advanced Sitemap
how a list of product from current store

0.1.4
* Add parent category

CHANGES:
->U app/design/frontend/default/default/template/catalog/product/productlist/category.phtml

5. Blog  Blog
A blog can be a great way for an online store to connect with customers, and this Magento extension makes it easy for you to incorporate a blog into your internet shop.  Are you already using the Monk_Blog extension for your store’s blog?  Well, Blog is compatible with Monk_Blog, so this Magento extension can integrate all of the information from your old blog into your new one (make sure you follow the directions closely).

6. Post Affiliate Pro Connector  Post Affiliate Pro Connector
An affiliate scheme can be a great way to increase your ecommerce site’s sales, and the Post Affiliate Pro Connector extension instantly integrates Post Affiliate Pro (PAP) into Magento.  This extension for Magento automatically handles click and sale affiliate tracking, tracks affiliate sales using Javascript or PHP API, accepts referrals to any page of your online store, and much more!

7. IW PayPal Standard Currencies  IW PayPal Standard Currencies
This Magento extension lets you choose any PayPal supported currency for your online store’s transaction currency and add new PayPal supported currencies to the PayPal Website Payments Standard payment method in your shop’s admin panel.  With the IW PayPal Standard Currencies extension, you can use any base currency for your online shop, allowing your store to have customers almost anywhere in the world.

8. J2T Points & Rewards J2T Points & Rewards
This module allow the customers do gather points on products they are buying.
The points can be redeemed for discount on their purchase.

Upon installing this module, you need to create a shopping cart promotion named 'points' and an attribute called 'reward_points'.

You can specify an amount of point for a product, or let the system do the job.
You can configure the module by updating the values in : System > Configuration > Reward Points.

9. Google Maps Store Locator  Google Maps Store Locator
To include the map in your CMS page/block use this snipped:
{{block type="core/template" template="unirgy/storelocator/map.phtml"}}

Copy to your theme and design the following interface files:
layout/ustorelocator.xml
template/unirgy/storelocator/map.phtml

If you are importing locations directly to database, go to this URL to fetch coordinates:
http://your.store.com/ustorelocator/adminhtml_location/updateEmptyGeoLocations

10. BouncingOrange TinyMCE (WYSIWYG)  BouncingOrange TinyMCE (WYSIWYG)
TinyMCE is fully configurable (without modifying any code file) in the administration configuration (System -> Configuration / Admin / WYSISYG Editor (TinyMCE)).

You can activate TinyMCE for the following textaera :
- Product Description
- Product Short Description
- CMS Page Content
- Static Block Content
- Category Description
- Newsletter Template

11. Fontis WYSIWYG Editor  Fontis WYSIWYG Editor
This extension gives you the option to enable a JavaScript WYSIWYG editor to specified admin pages. Currently available editors are: TinyMCE and FCKeditor.
For more information, including screenshots, version history and instructions on configuration and usage, please see the Fontis WYSIWYG Magento extension page.

12. Magento Live Chat  Magento Live Chat
This free module will provide LiveChat support in Magento.
It don’t depends third party platform
It don’t require to fill a form before start a conversation
It identify automatically registered user
It provide information about the current page of the customer
It can provide useful information about transformation rate
Conversation are archived and available forever

13. Fontis SecurePay  Fontis SecurePay
Please note that this extension uses the Australian SecurePay found at www.securepay.com.au.

Payments made with this payment module are processed through the SecureXML gateway.

For more information, including screenshots, version history and instructions on configuration and usage, please see the Fontis SecurePay Magento extension page.

14. Royal Mail Domestic and International Shipping  Royal Mail Domestic and International Shipping
Is your online store based in the UK?  If you sell tangible items to customers in the UK and beyond, then check out the Royal Mail Domestic and International Shipping extension for Magento.  This extension calculates the cost of sending items to a variety of different destinations using a range of various shipping methods.


15. Checkout Newsletter  Checkout Newsletter
A regular newsletter is a great way of telling your customers about your latest sales, newest products, and special offers.  Checkout Newsletter is a super simple extension for Magento which allows you to add a ‘Sign Up for Newsletter’ checkbox onto your Onepage Checkout Page.  With Checkout Newsletter, your customers can sign up for your company’s newsletter with just a click of there mouse!

16. Lazzymonks Twitter   Lazzymonks Twitter
Completely rebuilt to integrate better with magento. All the problems experienced with the earlier version have been fixed in this release.

You can set it to be in either the left menu, right menu or both. The number of updates to display is also adjustable.

Status updates can be posted from within the admin panel.

17. Events Calendar  Events Calendar
With this extension, you can display an events calendar on your website. Events are stored in the database. You can also display the upcoming list of events quickly by calling a block in your template.

Before entering any events, go to System->Configuration->General->Events Calendar and set your timezone.

Get the callendar using this {{block type="mathieufeventscal/events" template="mathieuf/eventscalendar/events.phtml"}}
Get the events list using this {{block type="mathieufeventscal/events" template="mathieuf/eventscalendar/nextevent.phtml"}}

18. Customer Groups Configurable Catalog  Customer Groups Configurable Catalog
This extension is a lot more flexible then the Netzarbeiter_LoginCatalog and
Netzarbeiter_CustomerActivation modules, but it is also more complex.
I suggest not installing this extension together with Netzarbeiter_LoginCatalog,
as that doesn't really make sense.

Release 0.2.5beta and above works with and without the flat catalog enabled

19. Exploded Menu  Exploded Menu
Replaces the standard Magento menu with a multi column drop down menu system. This is a community version of the Supermenu extension. The screenshots say it all ... Allows you to display your product categories in a more intuitive manner. Similar to the functionality used on top ecommerce sites like www.asos.com

20. Magento EasyLightbox  Magento EasyLightbox
Want a free and easy way to improve the appearance and functionality of your Magento site?  Then try Magento EasyLightbox, an extension that displays an image (i.e., your store’s products) as a lightbox.  Magento EasyLightbox takes about 5 minutes to install and configure, and you don’t need any coding experience! This is a great extension for just about type of online shop.

21. Fooman Invoice=Order Number   Fooman Invoice=Order Number
Love using Magento for your online store but hate how it creates separate invoice, shipment, and creditmemo numbers for one order?  Then start using Fooman Invoice=Order Number, a free extension for Magento.  Instead of keeping separate counts for invoice, shipment, and creditmemo numbers, this extension uses the related order number, making it easier for you to track of all of the numbers related to an order.

22. Magento jqZoom  
Magento provides users with an image gallery to help display their products in an attractive and interesting way.  Magento jqZoom, an extension for Magento, can make your online store even more dynamic, because it replaces Magento’s regular image gallery with the jqueryZoom widget.  This widget will allow your clients to hover over images of your products and show them in zoom view without having to use controls.

23. CLS Upgrade-proof Email Templates    CLS Upgrade-proof Email Templates
Looking for an upgrade-proof way to change your email templates for Magento?  Then give the Magento extension ‘CLS Upgrade-proof Email Templates’ a try!  Instead of having to directly change the default email templates for Magento, this module allows you to store your customized email templates in a custom theme directory which will override the default template.

24. Teaserbox  
Some tiny but nice features come with the Magento Teaserbox extension - below you will find a complete list of features which are supported within this product.

Image gallery
Sliding direction
Define Teaserbox proportions
....

25. IDEALIAGroup LightBox for Magento   IDEALIAGroup LightBox for Magento
IDEALIAGroup LightBox is UPDATE SAFE since no system files are replaced or modified and you can enable or disable it in a click.
FEATURES
1 - FULL MAGENTO BACKEND INTEGRATION: all parameters available in configuration (no coding needed)
2 - Configurable effect duration
3 - Support for thumbnails and base image: default double-click zooming of base image is automatically replaced and integrated
4 - Full styles configuration: assets colors, fonts and borders can be easily configured

26. Magento EasyTabs   Magento EasyTabs
This small extension will help to add informational tabs on product page. Installation and configuration will take approximately 5 minutes. No files are replaced and no codding experience needed to install!

1.Install extension using magento connect.
2.Log out from admin and login again.
3.Navigation to System > Configuration > Templates-Master > EasyTabs and enable extension for any store you need.

27.  MagentoConnect Manager   MagentoConnect Manager
One of the first things that really confused me when i start using Magento is Magento connect. I just started learning things, so i was looking for some plugin examples. I visited Magento connect page with extensions and looked for download button, instead i found “Get extension key” one.
You can also automatically upgrade your Magento installation through connect manager with key

magento-core/Mage_All_Latest

28. osCommerce Migration Tool   osCommerce Migration Tool
Now, available for download through Magento Connect, is a new extension for DataFlow which enables importing your data from osCommerce into your website in Magento.

To set up a profile, all Magento needs is information such as the IP/host of your osCommerce DB, user login and name of DB. Magento will take care of the rest. The data Magento supports is the default DB of osCommerce 2.2 RC2 which includes customers, orders, categories and products in multiple languages.

29. MostViewed module   MostViewed module
Magento MostViewed module automatically generates the list of your online store's most viewed
products and displays it at the home page (or some other page) in the customer area. All that you need - add the "mostviewed/list" block to the home page. You can do it at the CMS->Manage Pages page in the admin area. Simply add the following line to the content of page:
{{block type="mostviewed/list" name="home.mostviewed.list" alias="product_homepage" template="catalog/product/list.phtml"}}

30. Vertical Navigation with CSS Classes   Vertical Navigation with CSS Classes
With this extension you're able to design you own vertical category navigation with subcategories and product count display.

Each element has a fine css'ing so you can address each element or group exactly including "first" and "last" element per group and "previos", "activ" and "next" child.

The module removes the top.navigation via XML-Update and places the vertical nav in "left" structural block. You can change this by modifying the vertnav.xml file.

Tuesday 24 April 2012

color swatches

http://www.magentocommerce.com/magento-connect/galathemes/extension/7836/gala_colorswatches

Monday 23 April 2012

Fatal error: Maximum function nesting level of '100' reached, aborting!

If you are getting the Fatal error: Maximum function nesting level of  '100' reached, aborting! error, that means its a problem with the xDebug settings on your server.


You need to increase the limit of the xdebug.max_nesting_level in your php.ini file.  It seems to be set to 100 by default.  I set mine to 1000 which solved the issue.


xdebug.max_nesting_level=1000

Also another scenario for this issue is with CashOnDelivery Payment method. However i have not tested this scenario. You can find more information at http://www.magentocommerce.com/boards/viewthread/176650/ 

Emails not sending in Magento

There will be many scenarios for the email sending issue in Magento.

  1. Check if email sending is completely disabled in Magento: System => Configuration =>System tab ... Under Mail Sending Settings sub section "Disable Email Communications" should be set to NO
  2. Does Magento sending other native emails (new registration, order confirmation etc)?
  3. Check if the email sending is enabled for shipments in Magento admin: System => Configuration => Sales Emails => Shipment Comments should be enabled (By default it is enabled)
  4. Is Magento using any extension to send the emails? If this is the case click here
  5. If Magento is not using any extension to send the emails then we need to check the server whether it is supporting the email sending or not. 
  6. If the issue is in 1.3.1 version then the solution will be found here

Get all grouped products with status Enabled

$arrayAttrs = array(
'sku',
);

$groupedProductsCollection = Mage::getModel(‘catalog/product’)
->getCollection()
->addAttributeToFilter('type_id','grouped')
->addAttributeToFilter('status', Mage_Catalog_Model_Product_Status::STATUS_ENABLED)
->addAttributeToSelect($arrayAttrs);

Working with AJAX in Magento

How to embed Google Custom Search in Magento http://inchoo.net/ecommerce/magento/how-to-embed-google-custom-search-in-magento/

 Simply add $this->_removeButton('add'); line as specified below in Block/AdminHtml/Module_Name.php file

public function __construct()
{
$this->_controller = 'adminhtml_yourmodule';
$this->_blockGroup = 'yourmodule';
$this->_headerText = Mage::helper('yourmodule')->__('Module Manager');
parent::__construct();

$this->_removeButton('add');
}

How to embed Google Custom Search in Magento

Reusing Magento’s calendar control

Useful Magento Resources

Setting up Fedex shipping in Latest Magento Versions

This is guide about setting FedEx shipping method in Magento.

Step 1. Go to: Fedex Developer Resource Center and create developer’s account.

Step 2. When you create developer’s account go to Develop & Test Your Application Now, you will see the link Develop & Test Your Application (about testing, obtain developer test key) click on it. Then you only have to send request for test environment, you can see the link "Obtain Developer Test Key" click on it and fill the form. After sending form with data, you will receive email message from FedEx with all required data for testing FedEx shipping method.
In this email message you will get: Test Account Number:xxxxxxxxx , Key, Meter Number and Password (for FedEx Web Services for Shipping only) and you have to insert this number in field Account ID in FedEx config section. Set the Sandbox mode to Yes. You are done !!!!!!

Step 3. When you’re almost ready to launch:
After you’ve successfully tested your application and are ready to go into production, go to Technical Resources and click on FedEx Web Services for Shipping and Move to production. Then at the bottom of the page click obtain production key.

Custom Tabs to the Magento Product Admin / Customer Edit

Add Custom Tabs to the Magento Product Admin / Customer Edit

Add Custom Tabs to the Magento Product Admin
http://fishpig.co.uk/blog/custom-tabs-magento-product-admin.html

Magento – Add a new tab on customer edit page
http://terrani.wordpress.com/2011/01/03/magento-add-a-new-tab-on-customer-edit-page/

Magento Admin Detailed screen Explanation:.
http://www.excellencemagentoblog.com/admin-part2-series-magento-admin-forms-grids-controllers-tabs

Creating a Magento admin fully editable grid
http://dev.turboweb.co.nz/2011/04/16/creating-a-magento-admin-fully-editable-grid/

Adding grid tabs on admin section
http://www.excellencemagentoblog.com/magento-grid-serializer-admin-tabs-grid

if you want to change the magento admin side customer label

Go to database
1. search the particular word
2.and then change the word

Sunday 22 April 2012

Add Custom Tabs to the Magento Product Admin


Add Custom Tabs to the Magento Product Admin

Posted on August 30, 2010 by fishpig There have been 36 comment(s)
In Magento eCommerce, it is possible to add new attributes to product models and edit the values for these attributes on the Product edit page. This is fine if we only want to add standard data (attributes) to a product, but what if we wanted to do something a little different?
This article explains how to build a simple custom Magento extension that will add a new tab to the product edit page and provide a facility for processing that data when the user hits the Save button.

Creating the Magento Extension

The first step is to create the extension's setup file, which loads the extension into Magento.

app/etc/modules/Fishpig_Customtabs.xml

?
1
2
3
4
5
6
7
8
9
<?xml version="1.0"?>
<config>
    <modules>
        <Fishpig_Customtabs>
            <active>true</active>
            <codePool>local</codePool>
        </Fishpig_Customtabs>
    </modules>
</config>
This file will register the extension in Magento, telling it to look in the app/code/local/Fishpig/Customtabs/ directory for the extension's code.

app/code/local/Fishpig/Customtabs/etc/config.xml

The next file we make is the extension's config file. This file is a more detailed setup file, containing information about the extension's classes, layout files and everything else we need to make it work.
Notice the events section of this file (below)? To save the product data, we listen for an event that is triggered when ever a product is saved in the Magento Admin. This allows us to access the custom data we have created in the tab and process/save it.
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?xml version="1.0"?>
<config>
    <modules>
        <Fishpig_CustomTabs>
            <version>0.1.0</version>
        </Fishpig_CustomTabs>
    </modules>
    <global>
        <blocks>
            <customtabs>
                <class>Fishpig_Customtabs_Block</class>
            </customtabs>
        </blocks>
        <models>
            <customtabs>
                <class>Fishpig_Customtabs_Model</class>
            </customtabs>
        </models>
    </global>
    <adminhtml>
        <layout>
            <updates>
                <customtabs>
                    <file>customtabs.xml</file>
                </customtabs>
            </updates>
        </layout>
        <events>
            <catalog_product_save_after>
                <observers>
                    <fishpig_save_product_data>
                        <type>singleton</type>
                        <class>customtabs/observer</class>
                        <method>saveProductTabData</method>
                    </fishpig_save_product_data>
                </observers>
            </catalog_product_save_after>
        </events>
    </adminhtml>
</config>

app/code/local/Fishpig/Customtabs/Block/Adminhtml/Catalog/Product/Tab.php

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
<?php
 
class Fishpig_Customtabs_Block_Adminhtml_Catalog_Product_Tab
extends Mage_Adminhtml_Block_Template
implements Mage_Adminhtml_Block_Widget_Tab_Interface {
 
    /**
     * Set the template for the block
     *
     */
    public function _construct()
    {
        parent::_construct();
 
        $this->setTemplate('customtabs/catalog/product/tab.phtml');
    }
 
    /**
     * Retrieve the label used for the tab relating to this block
     *
     * @return string
     */
    public function getTabLabel()
    {
        return $this->__('My Custom Tab');
    }
 
    /**
     * Retrieve the title used by this tab
     *
     * @return string
     */
    public function getTabTitle()
    {
        return $this->__('Click here to view your custom tab content');
    }
 
    /**
     * Determines whether to display the tab
     * Add logic here to decide whether you want the tab to display
     *
     * @return bool
     */
    public function canShowTab()
    {
        return true;
    }
 
    /**
     * Stops the tab being hidden
     *
     * @return bool
     */
    public function isHidden()
    {
        return false;
    }
 
    /**
     * AJAX TAB's
     * If you want to use an AJAX tab, uncomment the following functions
     * Please note that you will need to setup a controller to recieve
     * the tab content request
     *
     */
    /**
     * Retrieve the class name of the tab
     * Return 'ajax' here if you want the tab to be loaded via Ajax
     *
     * return string
     */
#   public function getTabClass()
#   {
#       return 'my-custom-tab';
#   }
 
    /**
     * Determine whether to generate content on load or via AJAX
     * If true, the tab's content won't be loaded until the tab is clicked
     * You will need to setup a controller to handle the tab request
     *
     * @return bool
     */
#   public function getSkipGenerateContent()
#   {
#       return false;
#   }
 
    /**
     * Retrieve the URL used to load the tab content
     * Return the URL here used to load the content by Ajax
     * see self::getSkipGenerateContent & self::getTabClass
     *
     * @return string
     */
#   public function getTabUrl()
#   {
#       return null;
#   }
 
}
This is a big file and is the main code file for our tab. This file extends Mage_Adminhtml_Block_Template, which is the base Adminhtml template and doesn't do much. Your tab block can extend any block file in Magento, for example, in FishPig's WordPress Integration, we use this method to extend the grid class to display a list of WordPress posts.
On it's own, the above code won't do anything as we haven't included it yet. Let's include it now by creating a layout XML file for our extension.

app/design/adminhtml/default/default/layout/customtabs.xml

This is the layout file for the Adminhtml section of the extension. In here we will include the tab on the Magento Product edit page.
?
1
2
3
4
5
6
7
8
9
10
11
<?xml version="1.0"?>
<layout>
    <adminhtml_catalog_product_edit>
        <reference name="product_tabs">
            <action method="addTab">
                <name>my_custom_tab</name>
                <block>customtabs/adminhtml_catalog_product_tab</block>
            </action>
        </reference>
    </adminhtml_catalog_product_edit>
</layout>
This file is quite simple but without it, nothing will show on the product edit page. The last thing to do before we can see our tab in action is to create our new template file.

app/design/adminhtml/default/default/template/customtabs/catalog/product/tab.phtml

?
1
2
3
4
5
6
7
8
9
<?php
/**
 * Custom tab template
 */
?>
<div class="input-field">
 <label for="custom_field">Custom Field</label>
 <input type="text" class="input-text" name="custom_field" id="custom_field" />
</div>
Although this example is simple, you could enter anything you want in here. Using this and your block hopefully you can see how truly limitless the options are to you.

Testing Our Custom Magento Admin Tab

Now that we have the code in place, let's refresh our cache, go to a product edit page and see the tab in action!
Did it work? If it didn't work, check through your XML again as a slight error in any of that will stop everything working.
Now that we have our tab, let's take a look at how to process the data once the user hits the 'Save' button.

Saving our Custom Tab Data

To access the data during the saving process, we have hooked into an event called catalog_product_save_after (see config.xml above). This event is triggered each time a product model is saved. As we have declared our observer for this event inside the adminhtml block, we will only trigger our code when a product model is saved from the Magento Admin.

app/code/local/Fishpig/Customtabs/Model/Observer.php

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
<?php
 
class Fishpig_Customtabs_Model_Observer
{
    /**
     * Flag to stop observer executing more than once
     *
     * @var static bool
     */
    static protected $_singletonFlag = false;
 
    /**
     * This method will run when the product is saved from the Magento Admin
     * Use this function to update the product model, process the
     * data or anything you like
     *
     * @param Varien_Event_Observer $observer
     */
    public function saveProductTabData(Varien_Event_Observer $observer)
    {
        if (!self::$_singletonFlag) {
            self::$_singletonFlag = true;
 
            $product = $observer->getEvent()->getProduct();
 
            try {
                /**
                 * Perform any actions you want here
                 *
                 */
                $customFieldValue $this->_getRequest()->getPost('custom_field');
 
                /**
                 * Uncomment the line below to save the product
                 *
                 */
                //$product->save();
            }
            catch (Exception $e) {
                Mage::getSingleton('adminhtml/session')->addError($e->getMessage());
            }
        }
    }
 
    /**
     * Retrieve the product model
     *
     * @return Mage_Catalog_Model_Product $product
     */
    public function getProduct()
    {
        return Mage::registry('product');
    }
 
    /**
     * Shortcut to getRequest
     *
     */
    protected function _getRequest()
    {
        return Mage::app()->getRequest();
    }
}
Although this code doesn't do anything with the data, it hopefully illustrates how to access the data, after which you can do what ever you want.

Wrapping it Up

The extension you have just written is a simple extension that will allow you to add custom tabs in the Product edit page of the Magento Admin. This concept can be applied to any of the other sections in Magento (categories, customers etc) so take the time to study the code and understand how it works. For a more practical implementation of this, take a look at the code in FishPig's WordPress Integration as this uses this system to add custom data grid's as AJAX tabs to the Product edit page of the Magento Admin.

Thursday 5 April 2012

Free Magento Extensions

Magento is a popular open source platform to built your ecommerce website. It is based on Zend Framework and has a very flexible architecture. Although it is much younger than many of its competitors, Magento has a large community of users.
Developers can easily built plugins or templates for Magento, which makes it more and more popular among open source ecommerce solutions. here are loads of great extensions for Magento to help take your internet store to the next level.

1. Remerce CMS Meta Robots Remerce CMS Meta Robots
Set the Robots Meta Tags for Cms pages
This module add the option to set the Robots Meta for CMS pages.

Go to CMS =>Manage Pages

Select a page and go to the tab "Meta Data" Under Robots you can set the Robots Meta Tag



2. Fooman Google Analytics Plus Fooman Google Analytics Plus
This is a beta release - please report how this extensions works for you.

Current improvements:

    * * Track every individual page - including sections retrieved via AJAX during one-page-checkout
    * * Track the actual typed in keywords by your user (this might not yet work due to a bug in Magento itself)
    * * Temporary solution to make your Magento install SEO friendlier via robots.txt




3. Canonical URL's for Magento  Canonical URL's for Magento
This extension adds the new canonical links to the head of your Magento pages, for a more in-depth explanation, see Yoast.com. More about Magento SEO in general at Yoast.

Note
For the new way the module gets the canonical URL at product pages it is important that Mage::getSingleton('catalog/url')->refreshRewrites(); is executed. Normally this will happen with the install of the module but please check the canonical url at your product page. If you get a 404 for this url change change the value of "add category to product url" at your backend, save, change it back and save again. Now the url shouldn't give a 404 error.



4. Advanced Sitemap  Advanced Sitemap
how a list of product from current store

0.1.4
* Add parent category

CHANGES:
->U app/design/frontend/default/default/template/catalog/product/productlist/category.phtml



5. Blog  Blog
A blog can be a great way for an online store to connect with customers, and this Magento extension makes it easy for you to incorporate a blog into your internet shop.  Are you already using the Monk_Blog extension for your store’s blog?  Well, Blog is compatible with Monk_Blog, so this Magento extension can integrate all of the information from your old blog into your new one (make sure you follow the directions closely).



6. Post Affiliate Pro Connector  Post Affiliate Pro Connector
An affiliate scheme can be a great way to increase your ecommerce site’s sales, and the Post Affiliate Pro Connector extension instantly integrates Post Affiliate Pro (PAP) into Magento.  This extension for Magento automatically handles click and sale affiliate tracking, tracks affiliate sales using Javascript or PHP API, accepts referrals to any page of your online store, and much more!



7. IW PayPal Standard Currencies  IW PayPal Standard Currencies
This Magento extension lets you choose any PayPal supported currency for your online store’s transaction currency and add new PayPal supported currencies to the PayPal Website Payments Standard payment method in your shop’s admin panel.  With the IW PayPal Standard Currencies extension, you can use any base currency for your online shop, allowing your store to have customers almost anywhere in the world.



8. J2T Points & Rewards J2T Points & Rewards
This module allow the customers do gather points on products they are buying.
The points can be redeemed for discount on their purchase.

Upon installing this module, you need to create a shopping cart promotion named 'points' and an attribute called 'reward_points'.

You can specify an amount of point for a product, or let the system do the job.
You can configure the module by updating the values in : System > Configuration > Reward Points.



9. Google Maps Store Locator  Google Maps Store Locator
To include the map in your CMS page/block use this snipped:
{{block type="core/template" template="unirgy/storelocator/map.phtml"}}

Copy to your theme and design the following interface files:
layout/ustorelocator.xml
template/unirgy/storelocator/map.phtml

If you are importing locations directly to database, go to this URL to fetch coordinates:
http://your.store.com/ustorelocator/adminhtml_location/updateEmptyGeoLocations



10. BouncingOrange TinyMCE (WYSIWYG)  BouncingOrange TinyMCE (WYSIWYG)
TinyMCE is fully configurable (without modifying any code file) in the administration configuration (System -> Configuration / Admin / WYSISYG Editor (TinyMCE)).

You can activate TinyMCE for the following textaera :
- Product Description
- Product Short Description
- CMS Page Content
- Static Block Content
- Category Description
- Newsletter Template



11. Fontis WYSIWYG Editor  Fontis WYSIWYG Editor
This extension gives you the option to enable a JavaScript WYSIWYG editor to specified admin pages. Currently available editors are: TinyMCE and FCKeditor.
For more information, including screenshots, version history and instructions on configuration and usage, please see the Fontis WYSIWYG Magento extension page.



12. Magento Live Chat  Magento Live Chat
This free module will provide LiveChat support in Magento.
It don’t depends third party platform
It don’t require to fill a form before start a conversation
It identify automatically registered user
It provide information about the current page of the customer
It can provide useful information about transformation rate
Conversation are archived and available forever



13. Fontis SecurePay  Fontis SecurePay
Please note that this extension uses the Australian SecurePay found at www.securepay.com.au.

Payments made with this payment module are processed through the SecureXML gateway.

For more information, including screenshots, version history and instructions on configuration and usage, please see the Fontis SecurePay Magento extension page.



14. Royal Mail Domestic and International Shipping  Royal Mail Domestic and International Shipping
Is your online store based in the UK?  If you sell tangible items to customers in the UK and beyond, then check out the Royal Mail Domestic and International Shipping extension for Magento.  This extension calculates the cost of sending items to a variety of different destinations using a range of various shipping methods.





15. Checkout Newsletter  Checkout Newsletter
A regular newsletter is a great way of telling your customers about your latest sales, newest products, and special offers.  Checkout Newsletter is a super simple extension for Magento which allows you to add a ‘Sign Up for Newsletter’ checkbox onto your Onepage Checkout Page.  With Checkout Newsletter, your customers can sign up for your company’s newsletter with just a click of there mouse!



16. Lazzymonks Twitter   Lazzymonks Twitter
Completely rebuilt to integrate better with magento. All the problems experienced with the earlier version have been fixed in this release.

You can set it to be in either the left menu, right menu or both. The number of updates to display is also adjustable.

Status updates can be posted from within the admin panel.



17. Events Calendar  Events Calendar
With this extension, you can display an events calendar on your website. Events are stored in the database. You can also display the upcoming list of events quickly by calling a block in your template.

Before entering any events, go to System->Configuration->General->Events Calendar and set your timezone.

Get the callendar using this {{block type="mathieufeventscal/events" template="mathieuf/eventscalendar/events.phtml"}}
Get the events list using this {{block type="mathieufeventscal/events" template="mathieuf/eventscalendar/nextevent.phtml"}}



18. Customer Groups Configurable Catalog  Customer Groups Configurable Catalog
This extension is a lot more flexible then the Netzarbeiter_LoginCatalog and
Netzarbeiter_CustomerActivation modules, but it is also more complex.
I suggest not installing this extension together with Netzarbeiter_LoginCatalog,
as that doesn't really make sense.

Release 0.2.5beta and above works with and without the flat catalog enabled



19. Exploded Menu  Exploded Menu
Replaces the standard Magento menu with a multi column drop down menu system. This is a community version of the Supermenu extension. The screenshots say it all ... Allows you to display your product categories in a more intuitive manner. Similar to the functionality used on top ecommerce sites like www.asos.com




20. Magento EasyLightbox  Magento EasyLightbox
Want a free and easy way to improve the appearance and functionality of your Magento site?  Then try Magento EasyLightbox, an extension that displays an image (i.e., your store’s products) as a lightbox.  Magento EasyLightbox takes about 5 minutes to install and configure, and you don’t need any coding experience! This is a great extension for just about type of online shop.




21. Fooman Invoice=Order Number   Fooman Invoice=Order Number
Love using Magento for your online store but hate how it creates separate invoice, shipment, and creditmemo numbers for one order?  Then start using Fooman Invoice=Order Number, a free extension for Magento.  Instead of keeping separate counts for invoice, shipment, and creditmemo numbers, this extension uses the related order number, making it easier for you to track of all of the numbers related to an order.



22. Magento jqZoom  
Magento provides users with an image gallery to help display their products in an attractive and interesting way.  Magento jqZoom, an extension for Magento, can make your online store even more dynamic, because it replaces Magento’s regular image gallery with the jqueryZoom widget.  This widget will allow your clients to hover over images of your products and show them in zoom view without having to use controls.



23. CLS Upgrade-proof Email Templates    CLS Upgrade-proof Email Templates
Looking for an upgrade-proof way to change your email templates for Magento?  Then give the Magento extension ‘CLS Upgrade-proof Email Templates’ a try!  Instead of having to directly change the default email templates for Magento, this module allows you to store your customized email templates in a custom theme directory which will override the default template.



24. Teaserbox  
Some tiny but nice features come with the Magento Teaserbox extension - below you will find a complete list of features which are supported within this product.

Image gallery
Sliding direction
Define Teaserbox proportions
....



25. IDEALIAGroup LightBox for Magento   IDEALIAGroup LightBox for Magento
IDEALIAGroup LightBox is UPDATE SAFE since no system files are replaced or modified and you can enable or disable it in a click.
FEATURES
1 - FULL MAGENTO BACKEND INTEGRATION: all parameters available in configuration (no coding needed)
2 - Configurable effect duration
3 - Support for thumbnails and base image: default double-click zooming of base image is automatically replaced and integrated
4 - Full styles configuration: assets colors, fonts and borders can be easily configured



26. Magento EasyTabs   Magento EasyTabs
This small extension will help to add informational tabs on product page. Installation and configuration will take approximately 5 minutes. No files are replaced and no codding experience needed to install!

1.Install extension using magento connect.
2.Log out from admin and login again.
3.Navigation to System > Configuration > Templates-Master > EasyTabs and enable extension for any store you need.


27.  MagentoConnect Manager   MagentoConnect Manager
One of the first things that really confused me when i start using Magento is Magento connect. I just started learning things, so i was looking for some plugin examples. I visited Magento connect page with extensions and looked for download button, instead i found “Get extension key” one.
You can also automatically upgrade your Magento installation through connect manager with key

magento-core/Mage_All_Latest


28. osCommerce Migration Tool   osCommerce Migration Tool
Now, available for download through Magento Connect, is a new extension for DataFlow which enables importing your data from osCommerce into your website in Magento.

To set up a profile, all Magento needs is information such as the IP/host of your osCommerce DB, user login and name of DB. Magento will take care of the rest. The data Magento supports is the default DB of osCommerce 2.2 RC2 which includes customers, orders, categories and products in multiple languages.


29. MostViewed module   MostViewed module
Magento MostViewed module automatically generates the list of your online store's most viewed
products and displays it at the home page (or some other page) in the customer area. All that you need - add the "mostviewed/list" block to the home page. You can do it at the CMS->Manage Pages page in the admin area. Simply add the following line to the content of page:
{{block type="mostviewed/list" name="home.mostviewed.list" alias="product_homepage" template="catalog/product/list.phtml"}}


30. Vertical Navigation with CSS Classes   Vertical Navigation with CSS Classes
With this extension you're able to design you own vertical category navigation with subcategories and product count display.

Each element has a fine css'ing so you can address each element or group exactly including "first" and "last" element per group and "previos", "activ" and "next" child.

The module removes the top.navigation via XML-Update and places the vertical nav in "left" structural block. You can change this by modifying the vertnav.xml file.