Need help buying now? +48-22-219-5163 +1-917-720-3250
My Cart

Your Cart is Empty

Need help buying now?
+48-22-219-5163 +1-917-720-3250

Latest Magento Headlines, GoMage Updates and eCommerce Best Practices

Items 111 to 120 of 315 total

Browse Pages:
  1. 1
  2. ...
  3. 10
  4. 11
  5. 12
  6. 13
  7. 14
  8. ...
  9. 32
  • Magento File Structure

    Magento File Structure

    Magento architecture is known for its strictness and straightforwardness. Due to that, this platform is chosen by many online store owners as the base for their business. However, the file structure is quite extensive and it is very important to understand the purpose of each folder in the system core. It is necessary in order for the new files for Magento plug-ins you may install to be properly processed by the system.

    Magento system has a specific set of base files and directories which perform different roles. Below, we will review the main files, the purpose of which you should know in order not to damage the system operation in case you need to modify those files.

    The list and purpose of the core files:

    • .htaccess – this file controls mod_rewrite fancy URL. It also serves for the server configuration and adjusting PHP settings (e.g. setting up maximum response time). This is necessary to make Magento work faster;
    • .htaccess.sample – the copy of .htaccess which serves as a backup for default .htaccess file;
    • cron.php – this file regularly checks whether the system cache influences the speed and quality of its operation;
    • favicon.ico – small image ‘favicon’ which is located at the top of a browser tab and in the beginning of the site URL in the address bar;
    • index.php – the main loading file and the full initialization file;
    • index.php.sample – backup file in case the default index file is modified or corrupted;
    • LICENSE_AFL.txt - text license file of Academic Free License under which the system is released;
    • LICENSE.txt – Software License under which Magento is released;
    • pear – this file controls automatic system update with the help of downloader and SSH. This file also serves for initialization and control over separate system modules;
    • php.ini – a sample file of an un-configured server. GoMage specialists recommend using it for installation of Magento on your server but do not rewrite the similar file which already exists there. So, you can use it as a reference if you need to replace some of the lines in php.ini file on the server.

    You may find a lot of interesting information in our blog, please read the articles and share the most interesting of them with your friends. Stay with us, and in the next articles you will learn the purpose of the main core directories in Magento

    Read More
  • Limiting the number of products in the shopping cart

    Limiting the number of products in the shopping cart

    In the 21st century eCommerce has grown extremely popular and it does not look like it is losing its popularity. Small entrepreneurs and businesses of the marketing sphere rarely encounter any problems with the site operation directly in the process of selling products through an online store. However, the sites of large suppliers and retailers whose orders’ count reaches several thousand a day often stop reacting to any manipulations or commands. In this article we will discuss how to create a module for Magento that will limit the number of products allowed to be added to the cart by one customer. This extension will only affect the products with different SKUs while multiple items of the same products can be added without any limitations.

    So, the first step will be creation of a quote (limit) file, it will be at app/etc/modules/Obiwan_QuoteLimit.xml:

    <?xml version="1.0"?>
    <config>
        <modules>
            <Obiwan_QuoteLimit>
                <active>true</active>
                <codePool>community</codePool>
            </Obiwan_QuoteLimit>
        </modules>
    </config>
    

     

    Then, we use event/observer mechanism with the help of which we can inform users that their products limit has been reached. But first, we need to identify that limit. You can set any number in your admin panel, and set a default value, e.g. 100. Then you need to create a configuration file for your module: app/code/community/Obiwan/QuoteLimit/etc/config.xml.

    <?xml version="1.0"?>
    <config>
        <modules>
            <Obiwan_QuoteLimit>
                <version>0.1.0</version>
            </Obiwan_QuoteLimit>
        </modules>
        <global>
            <models>
                <obiwan_quotelimit>
                    <class>Obiwan_QuoteLimit_Model</class>
                </obiwan_quotelimit>
            </models>
            <helpers>
                <obiwan_quotelimit>
                    <class>Obiwan_QuoteLimit_Helper</class>
                </obiwan_quotelimit>
            </helpers>
        </global>
        <frontend>
            <events>
                <sales_quote_save_before>
                    <observers>
                        <obiwan_quotelimit_singleOrderLimit>
                            <class>obiwan_quotelimit/observer</class>
                            <method>singleOrderLimit</method>
                        </obiwan_quotelimit_singleOrderLimit>
                    </observers>
                </sales_quote_save_before>
            </events>
        </frontend>
        <default>
            <obiwan_quotelimit>
                <general>
                    <active>1</active>
                    <single_order_top_items>100</single_order_top_items>
                    <single_order_top_items_msg><![CDATA[No single order allowed with items 
                    over %s.]]></single_order_top_items_msg>
                </general>
            </obiwan_quotelimit>
        </default>
        <adminhtml>
            <acl>
                <resources>
                    <admin>
                        <children>
                            <system>
                                <children>
                                    <config>
                                        <children>
                                            <obiwan_quotelimit translate="title" 
                                            module="obiwan_quotelimit">
                                                <title>Maximum Quote Items</title>
                                            </obiwan_quotelimit>
                                        </children>
                                    </config>
                                </children>
                            </system>
                        </children>
                    </admin>
                </resources>
            </acl>
        </adminhtml>
    </config>
    

     

    Using the above code we have identified the event sales_quote_save_before which was created to preserve the ‘quote’ during the process of filling the shopping cart. Also, you can set a maximum default number in this file. Besides, you can make a message indicating that the limit is reached editable.

    The next step would be creation of a file for configuration of a maximum number of products by the store administrator in the admin panel: System->Configuration->Obi-Wan->General->Maximum Quote Items. We should create a file app/code/community/Obiwan/QuoteLimit/etc/system.xml:

    <?xml version="1.0" encoding="UTF-8"?>
    <config>
        <tabs>
            <obiwan translate="label" module="obiwan_quotelimit">
                <label>Obi-Wan</label>
                <sort_order>150</sort_order>
            </obiwan>
        </tabs>
        <sections>
            <obiwan_quotelimit translate="label comment" module="obiwan_quotelimit">
                <class>separator-top</class>
                <label>Maximum Quote Items</label>
                <tab>obiwan</tab>
                <frontend_type>text</frontend_type>
                <sort_order>100</sort_order>
                <show_in_default>1</show_in_default>
                <show_in_website>1</show_in_website>
                <show_in_store>1</show_in_store>
                <groups>
                    <general translate="label">
                        <label>Maximum Quote Items</label>
                        <sort_order>51</sort_order>
                        <show_in_default>1</show_in_default>
                        <show_in_website>1</show_in_website>
                        <show_in_store>1</show_in_store>
                        <fields>
                            <active translate="label">
                                <label>Enable</label>
                                <sort_order>10</sort_order>
                                <frontend_type>select</frontend_type>
                                <source_model>adminhtml/system_config_source_yesno
                                </source_model>
                                <show_in_default>1</show_in_default>
                                <show_in_website>1</show_in_website>
                                <show_in_store>1</show_in_store>
                            </active>
                            <single_order_top_items>
                                <label>Single Order Maximum Items</label>
                                <comment><![CDATA[No single order can be placed over X items, 
                                where X is an integer value which defaults to 100.]]></comment>
                                <frontend_type>text</frontend_type>
                                <sort_order>20</sort_order>
                                <show_in_default>1</show_in_default>
                                <show_in_website>1</show_in_website>
                                <show_in_store>1</show_in_store>
                            </single_order_top_items>
                            <single_order_top_items_msg>
                                <label>Single Order Maximum Items Message</label>
                                <comment><![CDATA[Message to be displayed to customer when 
                                "Single Order Maximum Items" condition limit is triggered. 
                                Defaults to "No single order allowed with items over %s.". 
                                Please use "%s" to position the amount items within the 
                                message string.]]></comment>
                                <frontend_type>text</frontend_type>
                                <sort_order>30</sort_order>
                                <show_in_default>1</show_in_default>
                                <show_in_website>1</show_in_website>
                                <show_in_store>1</show_in_store>
                            </single_order_top_items_msg>
                        </fields>
                    </general>
                </groups>
            </obiwan_quotelimit>
        </sections>
    </config>
    

     

    The next step is creation of an auxiliary file ‘helper’. It will help to get the data for various configurations. Create the file app/code/community/Obiwan/QuoteLimit/Helper/Data.php:

    <?php
    class Obiwan_QuoteLimit_Helper_Data extends Mage_Core_Helper_Abstract
    {
        const XML_PATH_ACTIVE                     = 'obiwan_quotelimit/general/active';
        const XML_PATH_SINGLE_ORDER_TOP_ITEMS     = 'obiwan_quotelimit/general/single_order_
        top_items';
        const XML_PATH_SINGLE_ORDER_TOP_ITEMS_MSG = 'obiwan_quotelimit/general/single_order_
        top_items_msg';
    
        public function isModuleEnabled($moduleName = null)
        {
            if ((int)Mage::getStoreConfig(self::XML_PATH_ACTIVE, Mage::app()->getStore()) != 1) 
            {
                return false;
            }
    
            return parent::isModuleEnabled($moduleName);
        }
    
        public function getSingleOrderTopItems($store = null)
        {
            return (int)Mage::getStoreConfig(self::XML_PATH_SINGLE_ORDER_TOP_ITEMS, $store);
        }
    
        public function getSingleOrderTopItemsMsg($store = null)
        {
            return Mage::getStoreConfig(self::XML_PATH_SINGLE_ORDER_TOP_ITEMS_MSG, $store);
        }
    }
    

     

    The last step is creation of a file which performs all the main work to limit the number of products in the shopping cart - app/code/community/Obiwan/QuoteLimit/Model/Observer.php:

    <?php
    class Obiwan_QuoteLimit_Model_Observer
    {
        protected $_helper;
    
        public function __construct()
        {
            $this->_helper = Mage::helper('obiwan_quotelimit');
        }
    
        /**
         * No single order can be placed over are items of X
         * @param   Varien_Event_Observer $observer
         */
        public function singleOrderLimit($observer)
        {
            if (!$this->_helper->isModuleEnabled()) {
                return;
            }
    
            /* @var Mage_Sales_Model_Quote $quote */
            $quote = $observer->getEvent()->getQuote();
            $store = $quote->getStore();
    
            if ($quote->getItemsCount() > $this->_helper->getSingleOrderTopItems($store)) {
    
                $topItems = $this->_helper->getSingleOrderTopItems($store);
    
                Mage::getSingleton('checkout/session')->addError(
                    $this->_helper->__($this->_helper->getSingleOrderTopItemsMsg($store), 
                    $topItems));
    
                Mage::app()->getFrontController()->getResponse()->setRedirect(Mage::
                getUrl('checkout/cart'));
                Mage::app()->getResponse()->sendResponse();
                exit;
            }
        }
    }
    

     

    How does it work? First, the system determines the value of the ‘quote’, then checks the number of products in the cart and compares the numbers. If the product number limit is not reached the purchase is made properly, but if the number has exceeded the quote set by the administrator, a customer will see a message that the limit has been exceeded and then the system will return them to the cart without saving the order, i.e. the cart will be cleaned.

    You can find more information about the most interesting and sometimes irreplaceable extensions on GoMage site and in our blog.

    Read More
  • GoMage FeedPro 3.4 is coming soon!

    GoMage FeedPro 3.4 is coming soon! New exciting features and improved functionality will help you advertize your products through the most well-known shopping systems with much better efficiency. A few known issues will be fixed. Expect the FeedPro version 3.4 released by the end of this week!

    Read More
  • Nofollow and Noindex: how to configure them in Magento

    Nofollow and Noindex: how to configure them in Magento

    Today many SEO specialists often use Nofollow and Noindex tags in order to distribute the weight of pages and also to hide some unnecessary parts of content or html code. What is the difference between noindex and nofollow?

    The first term is a tag which hides a part of text or the whole page from the search engines indexation, the second one is an attribute of <a> tag which helps to regulate the weight of a page by prohibiting to send it to the site being accessed.

    Noindex is used to hide some unnecessary information from the search engines, e.g. site visitor counter codes, non-unique content, frequently updated information.

    The main role of Nofollow is preservation of the page weight. This attribute is needed if you do not wish to transfer a part of the page weight to an unconfirmed source, in case you link to such popular sites as Google or Subscribe. This tag will also be useful if a page contains too many outgoing links. Besides, you can also use Nofollow to hide the links in comments.

    You can configure Nofollow and Noindex in Magento by yourself. Gomage Magento experts recommend two possible ways:

    • by placing a file robots.txt in the root directory of your site;
    • by using meta name="robots" tag.

    In the first case, you need to update the file robots.txt with the names of pages you wish to hide using the following code:

    User-agent: *
    Disallow: /myfile.html
    

     

     

    This method is basically used to prohibit indexation of the whole page instead of a specific part of text or unnecessary code.

    Correspondingly, if you do not wish to transfer a part of the page weight, you should use nofollow instead of noindex.

    The second variant of indexing prohibition may look as follows:

    <html>
    <head>
    <meta name=”robots” content=”noindex”/>
    <title>Site page title</title>
    </head>
    

     

     

    The attribute ‘content’ can have the following values:

    <meta name="robots" content="index, follow" />
    <meta name="robots" content="noindex, follow" />
    <meta name="robots" content="index, nofollow" />
    <meta name="robots" content="noindex, nofollow" />
    

     

     

    You can choose the content to hide in the Magento admin panel: System -> Configuration -> Design -> HTML Head -> Default Robots

    In order to set noindex and nofollow on static pages you can use layout update. In CMS – Pages tab choose the necessary page, then locate the field Layout Update XML and paste the following code:

    <reference name="head">
     <action method="setRobots"><value>noindex, nofollow</value><name>robots</name></action>
    </reference>
    

     

     

    This code can also be used in any template you choose. If you have any problems or questions we recommend you to contact Magento development team. We will be glad to assist you.

    Read More
  • GoMage LightCheckout 5.8 released!

    GoMage LightCheckout 5.8 released! Fully supported Magento 1.9 now! The extension functionality has been improved, several known bugs have been fixed and new features have been added! Download the LightCheckout 5.8 in your GoMage account and explore the updated checkout options on your site right now!

    Read More
  • Magento - how it began

    It is hard to believe now but seven years has passed since Magento was first released back in 2007. There have been many successes and failures, many problems and solutions during these years, three Magento editions have been developed constantly upgrading their versions. Let us remember how it all began, what were the expectations when the new eCommerce CMS was making its first ‘beta’ steps. The following interview with Roy Rubin, now former Varien CEO, was published on www.ecommerceoptimization.com in July, 2007.

    Magento eCommerce Solution Overview & Introduction:

    Many eCommerce developers, along with merchant sellers, have been eagerly anticipating the upcoming release of Varien’s new Open Source eCommerce Solution named Magento (like the color magenta, not magneto of x-men). Varien is currently one of the most renowned osCommerce development companies in existence and continues to set industry trends, build better strategies and help their customers improve the way they do business Online.

    Magento is the open-source eCommerce platform that promises to revolutionize the industry. It’s modular architecture and unprecedented flexibility means your business is no longer constrained by your eCommerce platform. Magento is total control.

    With the many changes in eCommerce over the years, developers and merchants have seen a huge need to build on a more flexible, robust, scalable eCommerce platform. Varien is hoping to fill that need by releasing the mother of all open source eCommerce solutions. Will Magento live up to all the hype? Definitely! I can tell you from what I’ve seen of their platform, that it is no joke. These guys have put in tons of man hours, have dedicated years of industry experience, provided unique insights and received mass amounts of feedback from the ones who matter most, users. One thing is for sure, they really understand the needs of the merchants, search engines, customers and many of the other aspects that make up the world of eCommerce. Varien has great customers, who make money. Plus, they have built some of the nicest osCommerce powered sites and Wordpress powered eCommerce sites I have seen. I can’t imagine what they can accomplish without limits - let’s see a glimpse!

    Roy Rubin, Varien CEO, Answers 10 Important Questions About Magento:

    How long has Magento been in delevopment? What’s the expected launch date?

    Magento has been in development since January 2007 and a beta is expected to launch in August.

    What are the main differences between Magento and oScommerce?

    There will be many differences, I’ve listed a few highlights below:

    • Architecture - one of the biggest issues with osCommerce has been upgrades. Once custom modifications are done, there is no way to upgrade. With Magento customizations to existing functionality simply extend the base, making upgrade a possibility.
    • Plug-in/modules/packages - osCommerce has no real good way to install new features. You have to go through the code and add/edit lines, making this an almost impossible task if any changes have been done to the code. With Magento, you’ll be able to install new modules relatively easily without getting into the code much.
    • Templating - a true 100% template system making any design and functionality requirements possible. No limitation whatsoever.
    • Enterprise level code and scaling - performance has been a huge issue we wanted to address.
    • A truly flexible system.
    • Since Magento will be backed by Varien there will be a clear roadmap and transparency to the project. Companies can count on the continuation of the project and enterprise level support and services.

    eCommerce platform providers are popping up all over. What are some of the things that make Megento different from other shopping carts.

    See some of the highlights above.

    How easy will Magento be to use? Should merchants know programming, theming or have other technical experience?

    Magento can be used out-of-the-box as is in many cases. We’ll provide a number of themes/templates to use so that merchants can apply a look-a-feel they prefer. We also expect the community to contribute layouts as soon as the project is launched. In order to benefit from the true power and flexibility of Magento, technical knowledge will be required. If you are looking to change the layout/design - HTML knowledge should be sufficient.

    What impact do you think Magento will have on the industry and especially Open Source delevopment?

    It is our hope that Magento will lead the open source eCommerce space. Based on the feedback and response we have received so far, we feel confident in making this happen. We have a long road ahead of us, but with the community’s help and our team’s dedication we feel Magento will make a huge impact in the eCommerce world.

    What do you mean by Magento gives “total control”?

    Total Control is 100% flexibility. Many eCommerce solutions have inherent constraints and business owners have traditionally tailored their business to the eCommerce platform of their choosing. With Magento it will work the other way around, putting the merchants back in control. No more constraints and no more limitations. That is our goal.

    Do you plan on running a Magento powered store yourself?

    Absolutely. We’ll have a store at some point in the next few months to illustrate just that (selling Magento gear). We feel confident in our solution and so do the hundreds of merchants that have contacted us so far.

    How did you get into eCommerce and what’s your favorite thing about this industry?

    Varien started as a web development and design firm and we stumbled across eCommerce back in 2003. We’ve been providing industry leading solutions ever since. The industry is very dynamic and we’ve been fortunate to work with very large clients that have incredible insight and drive in this industry. We have become passionate advocates.

    What do you think the future of eCommerce will look like and where will Magento be in 5 years?

    Well - it will certainly continue to grow. Demand for eCommerce services will certainly grow as the industry matures. In 5 years, Magento will be the standard of open source eCommerce and have thousands of sites across the web.

    What rough percentage of merchants will be able to use Magento and have it meet ALL their needs?

    “ALL” is a tricky word. I don’t feel there is one eCommerce system that meets every single need of every single merchant. Magento will be very close (and certainly closer than others) - the difference is that with Magento, the merchant has the control and possibility to complete anything they see as missing. With other platforms it’s simply not possible.

    As we can see now, Varien developers were right about the popularity and the impact their innovational eCommerce system would have. After 7 years and despite numerous competitors, Magento is still popular and used by merchants all over the world. Although, it is owned by eBay as of June 2011, it keeps growing and providing online business owners with powerful and easy-to-use platform for building their online stores. Many companies have built their business developing plug-ins and modules for Magento which extend the system functionality and provide new features to the online stores. One of these companies is GoMage. And until there is at least one single user of Magento we will continue provide quality extensions and services to our customers all over the world.

    Read More
  • Maintenance mode for Magento system

    Maintenance mode for Magento system

    Working with the site engine is quite a difficult task which requires attention and responsibility. Let us review how to configure maintenance mode option for Magento system.

    What do to if you need to close the site

    Let’s suggest your store is unavailable due to some external reasons (e.g. hosting server issues or some of Magento extensions do not work properly). In this situation it is most logical to close the store until the problem is fixed, otherwise you may lose many customers including your permanent ones.

    What is NOT recommended when you temporarily close the site:

    1. Close access to the site and do not display any information as to the reasons and terms of the site being unavailable. Put yourself in customer’s shoes – they have just ordered a product and suddenly the site is closed. They will hardly come to your store again.

    2. Blame someone else (e.g. your hosting company). They may be guilty, of course, but you should simply explain your visitors that the site is unavailable due to external reasons which are not under your control and everything possible is being done to fix the problem in the shortest time.

    3. Do not specify any approximate time of maintenance period end. If you need to edit your online store you may ask Magento development team to help you calculate the necessary time.

    Configuration of the maintenance mode

    The online store administrators often need to configure the front-end interface to inform their visitors about the technical work in progress. This is called ‘maintenance mode’ in Magento system. A step-by-step instruction to enable it is below:

    1. It order to put your site into maintenance mode create a new empty file called ‘maintenance.flag’ and upload it to the server;

    2. You must understand that when maintenance mode is enabled even the administrator will not have access to the admin panel. If you wish to allow the administrator to be able to access the admin panel and make some configurations you need to edit the file index.php. Open it using an editor, or download it to your computer and then open with the help of Notepad. You need to replace the line 47 with the following code:

    $ip = $_SERVER['REMOTE_ADDR'];
    $allowed = array('69.65.23.100','2.2.2.2');
    

     

    In the line $allowed = array(‘69.65.23.100′,’2.2.2.2′); you will need to specify to which IP addresses the store will be available (here you need to specify your administrator’s IP, webmaster’s IP and your own one).

    3. After that locate this part of code:

    if (file_exists($maintenanceFile)) {
    

     

    and replace it with:

    if (file_exists($maintenanceFile) && !in_array($ip, $allowed)) {
    

     

    4. Save the changes and refresh the store page. If the site is available to you then you have done everything correct, if not – you should check correctness of the data you have added to index.php.

    You can use any other text beside the default ‘The site is under construction’, etc. Just go to the file errors/default/503.phtml and change the text. Do not forget to save all changes you make. Try to address your visitors not too officially but without excessive familiarity. Besides, if there are not processed orders remaining when your site has gone into maintenance, make sure you inform your customers that you are working on the problem and they will soon receive the products they have ordered or will be issued a refund. Some marketing specialists even advise to use infographics or just an appropriate image with the explanation of the situation.

    If you have any questions please feel free to contact us by leaving a comment to the article or directly by email. We also recommend you to read other articles in our Magento Blog and share the most interesting of them with your friends and colleagues.

    Read More
  • Category creation and configuration

    Category creation and configuration

    Once an online store is created is it necessary to configure it properly to ensure correct functionality of all elements. The main task of any Magento store owner is configuration of a catalog. Let us review how creation and configuration of categories is done.

    How to create a catalog

    To begin the administrative work, go to the admin panel, then to System – Configuration – Catalog. This section determines which products will be displayed on the pages of your future catalog.

    You should set the values for the following fields:

    1. Products per Page. This field determines how many products will be displayed on a certain page by default. You can set this parameter to the value you wish. The option ‘Show all’ remains active. When it is selected the page is refreshed and a user can see all products on the page.

    2. List Mode. The products will be displayed as a list of certain type but the customer will be able to change the default parameter.

    3. Grid only. This parameter is responsible for displaying products as a simple grid. This parameter cannot be changed by a user. This option is good for saving time while turning pages but it is not always convenient, e.g. on a mobile site version.

    4. List Only. This is also a product list but customers cannot change the way of displaying products.

    5. Grid (Default)/List. This is a combination of several display types. A customer can choose how they wish to view the products – using a grid or a list. By default, the products are displayed in a grid.

    6. List (Default)/Grid. The same type of combination as the previous one, with only difference that the products are displayed in a list by default.

    The next option that can be set in this part of the admin panel is product parameters.

    Configuration of products in categories

    Default Tax Class. In this option you should determine whether or not taxes will be applied to the products which you add after the catalog is configured. If this functionality is not configured in your admin panel you can use corresponding GoMage extensions.

    It is very important to properly configure notifications regarding payment or updating product status. This option not only increases user’s interest to a specific product but also helps you to expand a database of your online store subscribers. You can create an option like “Follow the product price”. Then, once the price for a specific product is changed customers will receive a notification to their email. You can also use an option “Inform once available in stock”. This way your customers will be notified when the products they are interested in become available in stock.

    The option “Follow the product price” can be configured according to your wish. For this, change the parameters listed below:

    Frequency – every day, once a week or once a month the system will notify customers about price changes of the products they choose;

    Start time – the time when the system begins to check for updates;

    Error Email Recipient – here you need to set your work address to which a notification will be sent if there are any errors when the product price and status are updated;

    Error Email Sender – an email address from which the emails will be sent to you;

    Error Email Template - Magento themes which will be used in the error notification email.

    Save all changes and check the work of the functionality. Please read other articles in our Magento blog and share them with your friends if you find them useful. If you have any questions regarding the functionality and catalog system configuration please feel free to contact Magento development team.

    Read More
  • Custom Design for Magento categories

    Custom Design for Magento categories

    Design is very important for an online store, it possibly plays the key role in attracting users’ interest to your products. In order to make your menu representation unique and beautiful you can configure Custom Design for Magento categories.

    Why it is necessary

    Every online store must have its own zest. If you have already tried all other variants and have come to an idea of creation of a useful and efficient design, why don’t you start with configuration of categories output? To make it convenient for both administrators and customers you should pay attention to creating a specific style for each category.

    This becomes possible in your Magento online store thanks to its unique option called Custom Design. Let us review how to configure it.

    Step-by-step instruction

    Go to the admin panel and locate the option for Custom Design. The system will offer you several variants of design for a specific category. You can choose any variant you wish or even add your own one. If you do not choose any variants the field will remain empty and your store will use a standard theme which is set as default for that object.

    This parameter can be changed if you go to System > Configuration > Design. There you need to locate ‘Current package name’ option which indicates which of eCommerce templates is currently used. In this option you can specify the name of the design package you like or the one you have uploaded from your computer. Do not forget to save the changes.

    Now, the most interesting moment is configuration of categories output. To apply unique design to each category you need to do the following. In the drop-down menu ‘Apply To’ choose the necessary variant. For example, if the specified design is going to be used for one category only, the variant will be ‘This category only’. You can also choose ‘This category and its products’ – this means that selected design will be used not only for category itself but for all its products, too. However, if one and the same product belongs to several categories, this product should be displayed differently in each category to avoid confusing.

    Another interesting variant is ‘This category and its child categories’. This means that selected design will be applied to this category, its products and its child categories. Remember that, if you set the child categories to use design template different from the one set for the parent category, this setting will not be applied. The system will not consider it as a priority. If you wish to set all categories and products to use the same design template, choose the option ‘All’.

    You can also choose the period of time in which this specific design will be enabled and disabled. This is a very convenient option. In order to configure it just choose the corresponding time frame in the lines ‘Active From’ and ‘Active To’. This option is very convenient if you need to enable specific design for specific period of time, e.g. on holidays or sales. It will automatically be enabled when the time comes, then disabled when scheduled, and the site will return to its usual design.

    Beside that option you can also use specific GoMage extensions which will help you to create unique and convenient design.

    You can also use this section to configure the functionality for each category. For example, you can make it have one or two columns, display products without delimiters or configure the output areas for additional columns. In order to do that, choose the desirable option in ‘Page Layout’ drop-down list. It can be ‘No layout updates’ (only standard settings left), ‘Empty’ (the category page will only display products), ‘1 column’ (or ‘3 columns’), ‘Column on the left’ (option to choose currency will be displayed), ‘Column on the right’ (usually contains ‘Shopping cart’, ‘Wishlist’, ‘Polls’, etc.). The option ‘Custom Layout Update’ is responsible for update of the settings. Pay attention to the fact that, if you wish to create your own themes, they should all have XML structure.

    If you have any questions please email to Magento development team or leave your comments to the article. Also read other articles in our blog and share your thoughts and experience.

    Read More
  • Top Menu customization in Magento

    Top Menu customization in Magento

    Creation of a convenient menu is one of the basic factors of increasing sales for an online store. In order to develop the most convenient access to the main menu items it is necessary to know how Top Menu customization is done in Magento.

    What customization is

    Customization is creation of new items in the main menu according to specific categories. Such action will help you to develop the most easy-to-use and understandable site design. Customization can be done in any site menu and many programmers think that it is better to work with the main Top Menu.

    In order to add certain items to the Top navigation Menu those items should correspond to existing product categories. Implementation of other categories into this site section is done with the help of a specific algorithm. It often happens you need to place a simple link or a non-product category in the main navigation menu.

    A piece of advice: many internet marketing specialists insist that the top navigation menu should contain links to separate site pages (‘About us’, ‘Shipping rules’, etc.). There are several solutions of that task:

    1. Create a ‘fake’ category which must redirect to the necessary page once its button in clicked;

    2. Make modifications to Magento core;

    3. Create a specific Magento extension.

    The first variant is quite simple for beginning programmers, but some search engines may consider such customization approach as cloaking. Besides, it will take significant time to realize such functionality for each necessary option in the top menu.

    Making changes to Magento core leads to serious consequences. Firstly, in most cases it has a very bad influence on further Magento upgrades. Secondly, if you unintentionally remove at least one core file the whole store may go down at once.

    The third way is the most logical and safe for your business. You can create a module that will add any random page you need. In order to start creating it, go to app/code/local folder and create a folder ‘My’ inside it, and then create a folder ‘Module’ inside ‘My’. Then, you need to create one more folder - ‘etc’ - inside the folder ‘Module’ and in that folder you should place a file config.xml.

    The file config.xml must contain the following code:

    <config>
    <frontend>
    		<events>
    		<page_block_html_topmenu_gethtml_before>
    			<observers>
    				<my_module_add_to_menu>
    						<type>singleton</type>
    					<class>My_Module_Model_Observer</class>
    					<method>addToTopmenu</method>
    				</my_module_add_to_menu>
    			</observers>
    		</page_block_html_topmenu_gethtml_before>
    		</events>
    </frontend>
    </config>
    

     

    In order for the module to be enabled, go to app/etc/modules folder and create a file My_Module.xml inside it. This file will be responsible for initialization of the module. The file must contain the following code:

    <config>
    	<modules>
    	<My_Module>
    	<active>true</active>
    	<codePool>local</codePool>
    	</My_Module>
    	</modules>
    </config>
    

     

    Save the changes and go back to My/Module/Model folder. There, you need to create a file Observer.php. This file will define a method which should be used to realize the method of the module customization – addToTopmenu. Use the code below:

    class My_Module_Model_Observer
    {
     
    public function addToTopmenu(Varien_Event_Observer $observer)
    {
    	$menu = $observer->getMenu();
    	$tree = $menu->getTree();
     
    	$node = new Varien_Data_Tree_Node(array(
            	'name'   => 'categories',
            	'id' 	=> 'categories',
            	'url'	=> Mage::getUrl(), // point somewhere
    	), 'id', $tree, $menu);
     
    	$menu->addChild($node);
     
    	// Children menu items
    	$collection = Mage::getResourceModel('catalog/category_collection')
                ->setStore(Mage::app()->getStore())
            	->addIsActiveFilter()
            	->addNameToResult()
            	->setPageSize(3);
     
    	foreach ($collection as $category) {
        	$tree = $node->getTree();
        	$data = array(
            	'name'   => $category->getName(),
            	'id' 	=> 'category-node-'.$category->getId(),
            	'url'	=> $category->getUrl(),
        	);
     
        	$subNode = new Varien_Data_Tree_Node($data, 'id', $tree, $node);
        	$node->addChild($subNode);
    	}
    }
     
    }
    

     

    Pay attention that the line ‘categories’ defines the categories which will be added to the top navigation menu. If you have any questions regarding this type of Magento customization please leave your comments or consult with Magento development team.

    Read More

Items 111 to 120 of 315 total

Browse Pages:
  1. 1
  2. ...
  3. 10
  4. 11
  5. 12
  6. 13
  7. 14
  8. ...
  9. 32