Default meta titles for category pages Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern) Announcing the arrival of Valued Associate #679: Cesar Manara Unicorn Meta Zoo #1: Why another podcast?Adding variable in Magento Category Page Header Title (product count)Custom URL Per CategoryWhere are the meta-titles for categories set/created by default?Putting default for category and main website?Magento: Category Name vs Page Title NameHow to change page title of a category programmatically?Edit default page title for category programaticallyHow can i Bulk Change Category Page Title, Meta Description/KeywordsHow Can I Import Category META Tags(Titles, Descriptions, Keywords) into DB Using MySQL Query?Default Category deleted by MistakeHow to skip any category in seo meta title template?

Can you use the Shield Master feat to shove someone before you make an attack by using a Readied action?

Why does the resolve message appear first?

8 Prisoners wearing hats

Can an alien society believe that their star system is the universe?

How to answer "Have you ever been terminated?"

Is CEO the profession with the most psychopaths?

Fundamental Solution of the Pell Equation

What is the meaning of the simile “quick as silk”?

Is it common practice to audition new musicians 1-2-1 before rehearsing with the entire band?

What causes the direction of lightning flashes?

Do I really need to have a message in a novel to appeal to readers?

What does the "x" in "x86" represent?

Is it ethical to give a final exam after the professor has quit before teaching the remaining chapters of the course?

How to find all the available tools in mac terminal?

Delete nth line from bottom

Can melee weapons be used to deliver Contact Poisons?

Is it cost-effective to upgrade an old-ish Giant Escape R3 commuter bike with entry-level branded parts (wheels, drivetrain)?

Do wooden building fires get hotter than 600°C?

What do you call the main part of a joke?

Most bit efficient text communication method?

If my PI received research grants from a company to be able to pay my postdoc salary, did I have a potential conflict interest too?

Is there any way for the UK Prime Minister to make a motion directly dependent on Government confidence?

2001: A Space Odyssey's use of the song "Daisy Bell" (Bicycle Built for Two); life imitates art or vice-versa?

representation of vector and matrix in latex



Default meta titles for category pages



Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)
Announcing the arrival of Valued Associate #679: Cesar Manara
Unicorn Meta Zoo #1: Why another podcast?Adding variable in Magento Category Page Header Title (product count)Custom URL Per CategoryWhere are the meta-titles for categories set/created by default?Putting default for category and main website?Magento: Category Name vs Page Title NameHow to change page title of a category programmatically?Edit default page title for category programaticallyHow can i Bulk Change Category Page Title, Meta Description/KeywordsHow Can I Import Category META Tags(Titles, Descriptions, Keywords) into DB Using MySQL Query?Default Category deleted by MistakeHow to skip any category in seo meta title template?



.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








3















How do i create a default category meta title for all category pages?



i would like it to be something like this:



<title>category name - blah blah blah blah</title>


i want it to be the default only for category pages.



is this possible?










share|improve this question




























    3















    How do i create a default category meta title for all category pages?



    i would like it to be something like this:



    <title>category name - blah blah blah blah</title>


    i want it to be the default only for category pages.



    is this possible?










    share|improve this question
























      3












      3








      3








      How do i create a default category meta title for all category pages?



      i would like it to be something like this:



      <title>category name - blah blah blah blah</title>


      i want it to be the default only for category pages.



      is this possible?










      share|improve this question














      How do i create a default category meta title for all category pages?



      i would like it to be something like this:



      <title>category name - blah blah blah blah</title>


      i want it to be the default only for category pages.



      is this possible?







      category






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Jul 6 '15 at 4:59









      Aryeh ArmonAryeh Armon

      12014




      12014




















          3 Answers
          3






          active

          oldest

          votes


















          2














          Add the following code in your head.phtml



          if (Mage::registry(current_category)) 
          echo '<title> Categoryname- keyword1 keyword2 keyword3"';



          EDIT



          As far as I know Mage::registry('current_category') can be used to check whether we are in a category. See Alanstorm's Answer. The important parts of that answer is adding below for reference



          Current versions of Magento register certain global variables (not PHP globals, but things global to the Magento system) on certain pages.



          Calling the following



           $category = Mage::registry('current_category'); 
          $product = Mage::registry('current_product');
          $product = Mage::registry('product');


          will either return null if the objects haven't been set (i.e. you're on a page without a category or a product), or return category and product objects.



          If a product object is returned you're on a product page.



          If no product object is returned but a category object is, you're on a category page.



          then you can print what you want.






          share|improve this answer

























          • seems to be true also on product pages.

            – Aryeh Armon
            Jul 6 '15 at 5:53











          • Let me check and get back

            – Sundar
            Jul 6 '15 at 5:58











          • nope current_category register only works in category page.

            – Rajeev K Tomy
            Jul 6 '15 at 6:04











          • weird it does not for me. however i found a way to get over it ( Mage::registry('current_product') )

            – Aryeh Armon
            Jul 6 '15 at 6:06







          • 1





            Sorry. Yar. I am not aware that.. Let me edit ma answer. :)

            – Sundar
            Jul 6 '15 at 6:38


















          2














          The most cleaner way to perform this is by observing to the event controller_action_layout_generate_blocks_after. So the important parts of your module (Namespace_Module) would be



          File : appcodelocalNamespaceModuleetcconfig.xml



          <config>
          <frontend>
          <events>
          <controller_action_layout_generate_blocks_after>
          <observers>
          <change_category_page_title>
          <class>namespace_module/observer</class>
          <method>setCategoryPageTitle</method>
          </change_category_page_title>
          </observers>
          </controller_action_layout_generate_blocks_after>
          </events>
          </frontend>
          </config>


          Here we are registering an observer to the event controller_action_layout_generate_blocks_after. This particular event will get triggered, after every blocks is generated from the layout. So at this particular time, we can access every blocks in the Layout. The block that we are interested here is head block (ie Mage_Page_Block_Html_Head). This block is holds the title element.



          File : appcodelocalNamespaceModuleModelObserver.php



          <?php
          class Namespace_Module_Model_Observer


          const CATEGORY_TITLE_CONSTANT = 'blah blah blah blah';

          public function setCategoryPageTitle(Varien_Event_Observer $observer)

          //ensure modification applies only for category page.
          if (Mage::registry('current_category'))
          //get head block
          $head = $observer->getLayout()->getBlock('head');
          $title = $this->_prepareCategoryTitle();
          //set new title
          $head->setTitle($title);



          protected function _prepareCategoryTitle()

          return Mage::registry('current_category')->getName()
          . '-'
          . self::CATEGORY_TITLE_CONSTANT;




          This is our observer class. The method that will alter category title is setCategoryPageTitle(). What this function does is simple. It ensures we are in a category page. Then it will grab the head block and set a new title. To set a new title, we are using a protected function _prepareCategoryTitle(). I defined this function according to this question's need. Currently it will return category name + blah blah blah. So you can alter this method and change the title according to your needs.




          Note: Here NO CORE EDITS, NO ALTERNATION IN DEFAULT TEMPLATES. That is
          why this is the cleaner method.







          share|improve this answer
































            0














            Basically, title of pages from meta title field of category.



            For your requirment,you need to rewrite class Mage_Catalog_Block_Category_View on there you need check current title using check Head block getTitle() value and reset it value to default when it does have any value.



            Rewrite class:



            <?php
            class Dev_AmitCatalog_Block_Catalog_Category_View extends Mage_Catalog_Block_Category_View
            {
            protected function _prepareLayout()

            parent::_prepareLayout();

            $this->getLayout()->createBlock('catalog/breadcrumbs');

            if ($headBlock = $this->getLayout()->getBlock('head'))
            $category = $this->getCurrentCategory();
            if (!$headBlock->getTitle())
            $headBlock->setTitle($category->getName().' - blah blah blah blah');





            config.xml:



             <global>
            ....
            <blocks>
            <amitcatalog>
            <class>Dev_AmitCatalog_Block</class>
            </amitcatalog>
            <catalog>
            <rewrite>
            <category_view>Dev_AmitCatalog_Block_Catalog_Category_View</category_view>
            </rewrite>
            </catalog>
            </blocks>
            .....
            </global>





            share|improve this answer























            • Where should the rewrite class be located? as I have put it in /Block/Catalog/Category/View.php in my extension folder but no joy

              – Goose84
              Feb 11 '16 at 16:54











            Your Answer








            StackExchange.ready(function()
            var channelOptions =
            tags: "".split(" "),
            id: "479"
            ;
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function()
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled)
            StackExchange.using("snippets", function()
            createEditor();
            );

            else
            createEditor();

            );

            function createEditor()
            StackExchange.prepareEditor(
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: false,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: null,
            bindNavPrevention: true,
            postfix: "",
            imageUploader:
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            ,
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            );



            );













            draft saved

            draft discarded


















            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f73212%2fdefault-meta-titles-for-category-pages%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown

























            3 Answers
            3






            active

            oldest

            votes








            3 Answers
            3






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            2














            Add the following code in your head.phtml



            if (Mage::registry(current_category)) 
            echo '<title> Categoryname- keyword1 keyword2 keyword3"';



            EDIT



            As far as I know Mage::registry('current_category') can be used to check whether we are in a category. See Alanstorm's Answer. The important parts of that answer is adding below for reference



            Current versions of Magento register certain global variables (not PHP globals, but things global to the Magento system) on certain pages.



            Calling the following



             $category = Mage::registry('current_category'); 
            $product = Mage::registry('current_product');
            $product = Mage::registry('product');


            will either return null if the objects haven't been set (i.e. you're on a page without a category or a product), or return category and product objects.



            If a product object is returned you're on a product page.



            If no product object is returned but a category object is, you're on a category page.



            then you can print what you want.






            share|improve this answer

























            • seems to be true also on product pages.

              – Aryeh Armon
              Jul 6 '15 at 5:53











            • Let me check and get back

              – Sundar
              Jul 6 '15 at 5:58











            • nope current_category register only works in category page.

              – Rajeev K Tomy
              Jul 6 '15 at 6:04











            • weird it does not for me. however i found a way to get over it ( Mage::registry('current_product') )

              – Aryeh Armon
              Jul 6 '15 at 6:06







            • 1





              Sorry. Yar. I am not aware that.. Let me edit ma answer. :)

              – Sundar
              Jul 6 '15 at 6:38















            2














            Add the following code in your head.phtml



            if (Mage::registry(current_category)) 
            echo '<title> Categoryname- keyword1 keyword2 keyword3"';



            EDIT



            As far as I know Mage::registry('current_category') can be used to check whether we are in a category. See Alanstorm's Answer. The important parts of that answer is adding below for reference



            Current versions of Magento register certain global variables (not PHP globals, but things global to the Magento system) on certain pages.



            Calling the following



             $category = Mage::registry('current_category'); 
            $product = Mage::registry('current_product');
            $product = Mage::registry('product');


            will either return null if the objects haven't been set (i.e. you're on a page without a category or a product), or return category and product objects.



            If a product object is returned you're on a product page.



            If no product object is returned but a category object is, you're on a category page.



            then you can print what you want.






            share|improve this answer

























            • seems to be true also on product pages.

              – Aryeh Armon
              Jul 6 '15 at 5:53











            • Let me check and get back

              – Sundar
              Jul 6 '15 at 5:58











            • nope current_category register only works in category page.

              – Rajeev K Tomy
              Jul 6 '15 at 6:04











            • weird it does not for me. however i found a way to get over it ( Mage::registry('current_product') )

              – Aryeh Armon
              Jul 6 '15 at 6:06







            • 1





              Sorry. Yar. I am not aware that.. Let me edit ma answer. :)

              – Sundar
              Jul 6 '15 at 6:38













            2












            2








            2







            Add the following code in your head.phtml



            if (Mage::registry(current_category)) 
            echo '<title> Categoryname- keyword1 keyword2 keyword3"';



            EDIT



            As far as I know Mage::registry('current_category') can be used to check whether we are in a category. See Alanstorm's Answer. The important parts of that answer is adding below for reference



            Current versions of Magento register certain global variables (not PHP globals, but things global to the Magento system) on certain pages.



            Calling the following



             $category = Mage::registry('current_category'); 
            $product = Mage::registry('current_product');
            $product = Mage::registry('product');


            will either return null if the objects haven't been set (i.e. you're on a page without a category or a product), or return category and product objects.



            If a product object is returned you're on a product page.



            If no product object is returned but a category object is, you're on a category page.



            then you can print what you want.






            share|improve this answer















            Add the following code in your head.phtml



            if (Mage::registry(current_category)) 
            echo '<title> Categoryname- keyword1 keyword2 keyword3"';



            EDIT



            As far as I know Mage::registry('current_category') can be used to check whether we are in a category. See Alanstorm's Answer. The important parts of that answer is adding below for reference



            Current versions of Magento register certain global variables (not PHP globals, but things global to the Magento system) on certain pages.



            Calling the following



             $category = Mage::registry('current_category'); 
            $product = Mage::registry('current_product');
            $product = Mage::registry('product');


            will either return null if the objects haven't been set (i.e. you're on a page without a category or a product), or return category and product objects.



            If a product object is returned you're on a product page.



            If no product object is returned but a category object is, you're on a category page.



            then you can print what you want.







            share|improve this answer














            share|improve this answer



            share|improve this answer








            edited 8 mins ago









            Glorfindel

            2471412




            2471412










            answered Jul 6 '15 at 5:43









            SundarSundar

            5491420




            5491420












            • seems to be true also on product pages.

              – Aryeh Armon
              Jul 6 '15 at 5:53











            • Let me check and get back

              – Sundar
              Jul 6 '15 at 5:58











            • nope current_category register only works in category page.

              – Rajeev K Tomy
              Jul 6 '15 at 6:04











            • weird it does not for me. however i found a way to get over it ( Mage::registry('current_product') )

              – Aryeh Armon
              Jul 6 '15 at 6:06







            • 1





              Sorry. Yar. I am not aware that.. Let me edit ma answer. :)

              – Sundar
              Jul 6 '15 at 6:38

















            • seems to be true also on product pages.

              – Aryeh Armon
              Jul 6 '15 at 5:53











            • Let me check and get back

              – Sundar
              Jul 6 '15 at 5:58











            • nope current_category register only works in category page.

              – Rajeev K Tomy
              Jul 6 '15 at 6:04











            • weird it does not for me. however i found a way to get over it ( Mage::registry('current_product') )

              – Aryeh Armon
              Jul 6 '15 at 6:06







            • 1





              Sorry. Yar. I am not aware that.. Let me edit ma answer. :)

              – Sundar
              Jul 6 '15 at 6:38
















            seems to be true also on product pages.

            – Aryeh Armon
            Jul 6 '15 at 5:53





            seems to be true also on product pages.

            – Aryeh Armon
            Jul 6 '15 at 5:53













            Let me check and get back

            – Sundar
            Jul 6 '15 at 5:58





            Let me check and get back

            – Sundar
            Jul 6 '15 at 5:58













            nope current_category register only works in category page.

            – Rajeev K Tomy
            Jul 6 '15 at 6:04





            nope current_category register only works in category page.

            – Rajeev K Tomy
            Jul 6 '15 at 6:04













            weird it does not for me. however i found a way to get over it ( Mage::registry('current_product') )

            – Aryeh Armon
            Jul 6 '15 at 6:06






            weird it does not for me. however i found a way to get over it ( Mage::registry('current_product') )

            – Aryeh Armon
            Jul 6 '15 at 6:06





            1




            1





            Sorry. Yar. I am not aware that.. Let me edit ma answer. :)

            – Sundar
            Jul 6 '15 at 6:38





            Sorry. Yar. I am not aware that.. Let me edit ma answer. :)

            – Sundar
            Jul 6 '15 at 6:38













            2














            The most cleaner way to perform this is by observing to the event controller_action_layout_generate_blocks_after. So the important parts of your module (Namespace_Module) would be



            File : appcodelocalNamespaceModuleetcconfig.xml



            <config>
            <frontend>
            <events>
            <controller_action_layout_generate_blocks_after>
            <observers>
            <change_category_page_title>
            <class>namespace_module/observer</class>
            <method>setCategoryPageTitle</method>
            </change_category_page_title>
            </observers>
            </controller_action_layout_generate_blocks_after>
            </events>
            </frontend>
            </config>


            Here we are registering an observer to the event controller_action_layout_generate_blocks_after. This particular event will get triggered, after every blocks is generated from the layout. So at this particular time, we can access every blocks in the Layout. The block that we are interested here is head block (ie Mage_Page_Block_Html_Head). This block is holds the title element.



            File : appcodelocalNamespaceModuleModelObserver.php



            <?php
            class Namespace_Module_Model_Observer


            const CATEGORY_TITLE_CONSTANT = 'blah blah blah blah';

            public function setCategoryPageTitle(Varien_Event_Observer $observer)

            //ensure modification applies only for category page.
            if (Mage::registry('current_category'))
            //get head block
            $head = $observer->getLayout()->getBlock('head');
            $title = $this->_prepareCategoryTitle();
            //set new title
            $head->setTitle($title);



            protected function _prepareCategoryTitle()

            return Mage::registry('current_category')->getName()
            . '-'
            . self::CATEGORY_TITLE_CONSTANT;




            This is our observer class. The method that will alter category title is setCategoryPageTitle(). What this function does is simple. It ensures we are in a category page. Then it will grab the head block and set a new title. To set a new title, we are using a protected function _prepareCategoryTitle(). I defined this function according to this question's need. Currently it will return category name + blah blah blah. So you can alter this method and change the title according to your needs.




            Note: Here NO CORE EDITS, NO ALTERNATION IN DEFAULT TEMPLATES. That is
            why this is the cleaner method.







            share|improve this answer





























              2














              The most cleaner way to perform this is by observing to the event controller_action_layout_generate_blocks_after. So the important parts of your module (Namespace_Module) would be



              File : appcodelocalNamespaceModuleetcconfig.xml



              <config>
              <frontend>
              <events>
              <controller_action_layout_generate_blocks_after>
              <observers>
              <change_category_page_title>
              <class>namespace_module/observer</class>
              <method>setCategoryPageTitle</method>
              </change_category_page_title>
              </observers>
              </controller_action_layout_generate_blocks_after>
              </events>
              </frontend>
              </config>


              Here we are registering an observer to the event controller_action_layout_generate_blocks_after. This particular event will get triggered, after every blocks is generated from the layout. So at this particular time, we can access every blocks in the Layout. The block that we are interested here is head block (ie Mage_Page_Block_Html_Head). This block is holds the title element.



              File : appcodelocalNamespaceModuleModelObserver.php



              <?php
              class Namespace_Module_Model_Observer


              const CATEGORY_TITLE_CONSTANT = 'blah blah blah blah';

              public function setCategoryPageTitle(Varien_Event_Observer $observer)

              //ensure modification applies only for category page.
              if (Mage::registry('current_category'))
              //get head block
              $head = $observer->getLayout()->getBlock('head');
              $title = $this->_prepareCategoryTitle();
              //set new title
              $head->setTitle($title);



              protected function _prepareCategoryTitle()

              return Mage::registry('current_category')->getName()
              . '-'
              . self::CATEGORY_TITLE_CONSTANT;




              This is our observer class. The method that will alter category title is setCategoryPageTitle(). What this function does is simple. It ensures we are in a category page. Then it will grab the head block and set a new title. To set a new title, we are using a protected function _prepareCategoryTitle(). I defined this function according to this question's need. Currently it will return category name + blah blah blah. So you can alter this method and change the title according to your needs.




              Note: Here NO CORE EDITS, NO ALTERNATION IN DEFAULT TEMPLATES. That is
              why this is the cleaner method.







              share|improve this answer



























                2












                2








                2







                The most cleaner way to perform this is by observing to the event controller_action_layout_generate_blocks_after. So the important parts of your module (Namespace_Module) would be



                File : appcodelocalNamespaceModuleetcconfig.xml



                <config>
                <frontend>
                <events>
                <controller_action_layout_generate_blocks_after>
                <observers>
                <change_category_page_title>
                <class>namespace_module/observer</class>
                <method>setCategoryPageTitle</method>
                </change_category_page_title>
                </observers>
                </controller_action_layout_generate_blocks_after>
                </events>
                </frontend>
                </config>


                Here we are registering an observer to the event controller_action_layout_generate_blocks_after. This particular event will get triggered, after every blocks is generated from the layout. So at this particular time, we can access every blocks in the Layout. The block that we are interested here is head block (ie Mage_Page_Block_Html_Head). This block is holds the title element.



                File : appcodelocalNamespaceModuleModelObserver.php



                <?php
                class Namespace_Module_Model_Observer


                const CATEGORY_TITLE_CONSTANT = 'blah blah blah blah';

                public function setCategoryPageTitle(Varien_Event_Observer $observer)

                //ensure modification applies only for category page.
                if (Mage::registry('current_category'))
                //get head block
                $head = $observer->getLayout()->getBlock('head');
                $title = $this->_prepareCategoryTitle();
                //set new title
                $head->setTitle($title);



                protected function _prepareCategoryTitle()

                return Mage::registry('current_category')->getName()
                . '-'
                . self::CATEGORY_TITLE_CONSTANT;




                This is our observer class. The method that will alter category title is setCategoryPageTitle(). What this function does is simple. It ensures we are in a category page. Then it will grab the head block and set a new title. To set a new title, we are using a protected function _prepareCategoryTitle(). I defined this function according to this question's need. Currently it will return category name + blah blah blah. So you can alter this method and change the title according to your needs.




                Note: Here NO CORE EDITS, NO ALTERNATION IN DEFAULT TEMPLATES. That is
                why this is the cleaner method.







                share|improve this answer















                The most cleaner way to perform this is by observing to the event controller_action_layout_generate_blocks_after. So the important parts of your module (Namespace_Module) would be



                File : appcodelocalNamespaceModuleetcconfig.xml



                <config>
                <frontend>
                <events>
                <controller_action_layout_generate_blocks_after>
                <observers>
                <change_category_page_title>
                <class>namespace_module/observer</class>
                <method>setCategoryPageTitle</method>
                </change_category_page_title>
                </observers>
                </controller_action_layout_generate_blocks_after>
                </events>
                </frontend>
                </config>


                Here we are registering an observer to the event controller_action_layout_generate_blocks_after. This particular event will get triggered, after every blocks is generated from the layout. So at this particular time, we can access every blocks in the Layout. The block that we are interested here is head block (ie Mage_Page_Block_Html_Head). This block is holds the title element.



                File : appcodelocalNamespaceModuleModelObserver.php



                <?php
                class Namespace_Module_Model_Observer


                const CATEGORY_TITLE_CONSTANT = 'blah blah blah blah';

                public function setCategoryPageTitle(Varien_Event_Observer $observer)

                //ensure modification applies only for category page.
                if (Mage::registry('current_category'))
                //get head block
                $head = $observer->getLayout()->getBlock('head');
                $title = $this->_prepareCategoryTitle();
                //set new title
                $head->setTitle($title);



                protected function _prepareCategoryTitle()

                return Mage::registry('current_category')->getName()
                . '-'
                . self::CATEGORY_TITLE_CONSTANT;




                This is our observer class. The method that will alter category title is setCategoryPageTitle(). What this function does is simple. It ensures we are in a category page. Then it will grab the head block and set a new title. To set a new title, we are using a protected function _prepareCategoryTitle(). I defined this function according to this question's need. Currently it will return category name + blah blah blah. So you can alter this method and change the title according to your needs.




                Note: Here NO CORE EDITS, NO ALTERNATION IN DEFAULT TEMPLATES. That is
                why this is the cleaner method.








                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited Jul 6 '15 at 6:48

























                answered Jul 6 '15 at 6:31









                Rajeev K TomyRajeev K Tomy

                14.7k54589




                14.7k54589





















                    0














                    Basically, title of pages from meta title field of category.



                    For your requirment,you need to rewrite class Mage_Catalog_Block_Category_View on there you need check current title using check Head block getTitle() value and reset it value to default when it does have any value.



                    Rewrite class:



                    <?php
                    class Dev_AmitCatalog_Block_Catalog_Category_View extends Mage_Catalog_Block_Category_View
                    {
                    protected function _prepareLayout()

                    parent::_prepareLayout();

                    $this->getLayout()->createBlock('catalog/breadcrumbs');

                    if ($headBlock = $this->getLayout()->getBlock('head'))
                    $category = $this->getCurrentCategory();
                    if (!$headBlock->getTitle())
                    $headBlock->setTitle($category->getName().' - blah blah blah blah');





                    config.xml:



                     <global>
                    ....
                    <blocks>
                    <amitcatalog>
                    <class>Dev_AmitCatalog_Block</class>
                    </amitcatalog>
                    <catalog>
                    <rewrite>
                    <category_view>Dev_AmitCatalog_Block_Catalog_Category_View</category_view>
                    </rewrite>
                    </catalog>
                    </blocks>
                    .....
                    </global>





                    share|improve this answer























                    • Where should the rewrite class be located? as I have put it in /Block/Catalog/Category/View.php in my extension folder but no joy

                      – Goose84
                      Feb 11 '16 at 16:54















                    0














                    Basically, title of pages from meta title field of category.



                    For your requirment,you need to rewrite class Mage_Catalog_Block_Category_View on there you need check current title using check Head block getTitle() value and reset it value to default when it does have any value.



                    Rewrite class:



                    <?php
                    class Dev_AmitCatalog_Block_Catalog_Category_View extends Mage_Catalog_Block_Category_View
                    {
                    protected function _prepareLayout()

                    parent::_prepareLayout();

                    $this->getLayout()->createBlock('catalog/breadcrumbs');

                    if ($headBlock = $this->getLayout()->getBlock('head'))
                    $category = $this->getCurrentCategory();
                    if (!$headBlock->getTitle())
                    $headBlock->setTitle($category->getName().' - blah blah blah blah');





                    config.xml:



                     <global>
                    ....
                    <blocks>
                    <amitcatalog>
                    <class>Dev_AmitCatalog_Block</class>
                    </amitcatalog>
                    <catalog>
                    <rewrite>
                    <category_view>Dev_AmitCatalog_Block_Catalog_Category_View</category_view>
                    </rewrite>
                    </catalog>
                    </blocks>
                    .....
                    </global>





                    share|improve this answer























                    • Where should the rewrite class be located? as I have put it in /Block/Catalog/Category/View.php in my extension folder but no joy

                      – Goose84
                      Feb 11 '16 at 16:54













                    0












                    0








                    0







                    Basically, title of pages from meta title field of category.



                    For your requirment,you need to rewrite class Mage_Catalog_Block_Category_View on there you need check current title using check Head block getTitle() value and reset it value to default when it does have any value.



                    Rewrite class:



                    <?php
                    class Dev_AmitCatalog_Block_Catalog_Category_View extends Mage_Catalog_Block_Category_View
                    {
                    protected function _prepareLayout()

                    parent::_prepareLayout();

                    $this->getLayout()->createBlock('catalog/breadcrumbs');

                    if ($headBlock = $this->getLayout()->getBlock('head'))
                    $category = $this->getCurrentCategory();
                    if (!$headBlock->getTitle())
                    $headBlock->setTitle($category->getName().' - blah blah blah blah');





                    config.xml:



                     <global>
                    ....
                    <blocks>
                    <amitcatalog>
                    <class>Dev_AmitCatalog_Block</class>
                    </amitcatalog>
                    <catalog>
                    <rewrite>
                    <category_view>Dev_AmitCatalog_Block_Catalog_Category_View</category_view>
                    </rewrite>
                    </catalog>
                    </blocks>
                    .....
                    </global>





                    share|improve this answer













                    Basically, title of pages from meta title field of category.



                    For your requirment,you need to rewrite class Mage_Catalog_Block_Category_View on there you need check current title using check Head block getTitle() value and reset it value to default when it does have any value.



                    Rewrite class:



                    <?php
                    class Dev_AmitCatalog_Block_Catalog_Category_View extends Mage_Catalog_Block_Category_View
                    {
                    protected function _prepareLayout()

                    parent::_prepareLayout();

                    $this->getLayout()->createBlock('catalog/breadcrumbs');

                    if ($headBlock = $this->getLayout()->getBlock('head'))
                    $category = $this->getCurrentCategory();
                    if (!$headBlock->getTitle())
                    $headBlock->setTitle($category->getName().' - blah blah blah blah');





                    config.xml:



                     <global>
                    ....
                    <blocks>
                    <amitcatalog>
                    <class>Dev_AmitCatalog_Block</class>
                    </amitcatalog>
                    <catalog>
                    <rewrite>
                    <category_view>Dev_AmitCatalog_Block_Catalog_Category_View</category_view>
                    </rewrite>
                    </catalog>
                    </blocks>
                    .....
                    </global>






                    share|improve this answer












                    share|improve this answer



                    share|improve this answer










                    answered Jul 6 '15 at 6:12









                    Amit BeraAmit Bera

                    60.1k1678178




                    60.1k1678178












                    • Where should the rewrite class be located? as I have put it in /Block/Catalog/Category/View.php in my extension folder but no joy

                      – Goose84
                      Feb 11 '16 at 16:54

















                    • Where should the rewrite class be located? as I have put it in /Block/Catalog/Category/View.php in my extension folder but no joy

                      – Goose84
                      Feb 11 '16 at 16:54
















                    Where should the rewrite class be located? as I have put it in /Block/Catalog/Category/View.php in my extension folder but no joy

                    – Goose84
                    Feb 11 '16 at 16:54





                    Where should the rewrite class be located? as I have put it in /Block/Catalog/Category/View.php in my extension folder but no joy

                    – Goose84
                    Feb 11 '16 at 16:54

















                    draft saved

                    draft discarded
















































                    Thanks for contributing an answer to Magento Stack Exchange!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid


                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.

                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function ()
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f73212%2fdefault-meta-titles-for-category-pages%23new-answer', 'question_page');

                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Can not update quote_id field of “quote_item” table magento 2Magento 2.1 - We can't remove the item. (Shopping Cart doesnt allow us to remove items before becomes empty)Add value for custom quote item attribute using REST apiREST API endpoint v1/carts/cartId/items always returns error messageCorrect way to save entries to databaseHow to remove all associated quote objects of a customer completelyMagento 2 - Save value from custom input field to quote_itemGet quote_item data using quote id and product id filter in Magento 2How to set additional data to quote_item table from controller in Magento 2?What is the purpose of additional_data column in quote_item table in magento2Set Custom Price to Quote item magento2 from controller

                    Magento 2 disable Secret Key on URL's from terminal The Next CEO of Stack OverflowMagento 2 Shortcut/GUI tool to perform commandline tasks for windowsIn menu add configuration linkMagento oAuth : Generating access token and access secretMagento 2 security key issue in Third-Party API redirect URIPublic actions in admin controllersHow to Disable Cache in Custom WidgetURL Key not changing in Magento 2Product URL Key gets deleted when importing custom options - Magento 2Problem with reindex terminalMagento 2 - bin/magento Commands not working in Cpanel Terminal

                    Aasi (pallopeli) Navigointivalikko