Yoast landing pages module with layered navigation

First, a thanks to the team at Yoast for a handy little module. We needed to add layered navigation to the result pane, but it appears others were struggling with a solution - so here's the answer!

Create your CMS brand/focus page as normal, then add the Yoast_Filter block:

4 product_categories 4441


And underneath add the code to load the layered navigation in the left pane:

Then set your layout to "2 columns right". This is a bit of a caveat, due to the arguments being set in the block, the layered navigation block must be physically after the content block in the source code. When my brain is thinking straight, I'll figure out the fix, but in the mean-time, you can just float col-right left and col-main right, to get your 2 column left layout back.

That's it! But you'll need to use using our updated version of Yoast_Filter - which includes the extra functionality required for layered navigation. You can download it using the link below.

Download Yoast Landing Pages (enhanced)

  • This is just great we're looking for this feature since months. Do you have a live and workin example? Does the developer know about your great solution? Is he interested in joining your code to the recent version?

    • Hi,

      I emailed Yoast, but to no avail.

      We have a few sites using it at the moment, all of which are in development - so no feature URLs as yet.

      • Thanks for your answer. Which Magento versionb do I need to run this extended module?

  • Okay. I've tested the module and I think it's not possible to run it on Magento Your Model/Layer.php is requiering Mage::getResourceModel('catalog/product_attribute_collection'). This class is only available in Magento 1.4.x. Too bad 🙁 We need this functionality on Magento 1.3.2.x

    • It could probably be made to work on 1.3.2 - but unless a client asks us to build it for them, its unlikely I would post the code here.

      If you want us to put it together for you, get in touch for a quote.

  • nadshez

    Can someone please guide me? I installed the code & it was kinda working, except that the result was incorrect .. and i would get 2 pages of resultset (10 items each), one on top of the other.

    So I uninstalled this & installed the Yoast extension, which apparently has the support for layered navigation now. It works fine without navigation, but when i gave the block in the xml area, i would get a error

    Fatal error: Call to a member function getSize() on a non-object in appdesignfrontendcleanidefaulttemplatecatalogproductlisttoolbar.phtml on line 39

    Can anyone tell me whats going on & how to fix it?! Thanks.

  • Astrid

    The price filters in the layered navigation apparently only filter the regular price, although they display the sale price ranges in the navigation. Is there a fix so that the price filters will display the products by their sale prices instead of just their regular price?

    Other than that bug, this is a fantastic plugin!

  • Vitor

    Hello Benjamin,

    Thank you very much for sharing this great solution.

    I'm having a lil problem and maybe you can help me fix it. I use some configurable atributes as filters on my store (size and color), they work well on the layered navigation of categories, but they are not working properly in the landing pages with layered navigation. They only return the simple products on results when selected, completely ignoring the configurable ones.

    The weird thing is that another "personalized" filter that im using (manufacturer) is actually working properly.

    Is there any way to fix it?

    Again, thank you very much!

    • I have the same problem with the Yoast extention i can not select configurable product. Does anyone have a solution?

      • Lucas

        Having the same issue!
        Configurable products are not filtered properly!
        Please help!

        • amadex

          Any news on configurable products filtering?... tkx!

          • Arwyl

            I have a problem when filtering by manufacturer. Setting the value to 4 retrieves not only the products of manufacturer id=4, but also of manufacturer id=14. The products of manufacturer 14 are all configurable products, so I'm not sure whether this problem is related to the configurable products bug. Any help would be much appreciated, thanks!

          • Arwyl

            I fixed this. It wasn't related to the problems with configurable products. It was caused by the logic in line 35 of Results.php:

            $collection->addAttributeToFilter($attribute, array('like' => '%'.$value.'%'));

            I fixed this by replading this line with an if-then-else statement:

            if ($attribute == 'manufacturer') {
                        $collection->addAttributeToFilter($attribute, array('eq' => $value));
                    } else {
                        $collection->addAttributeToFilter($attribute, array('like' => '%'.$value.'%'));

            The extension is working fine now in Magento, thanks a lot for the great work!

  • Thanks for this great plugin!

    In Result.php around line 48 I had to change
    $collection->addAttributeToFilter($_filter->getFilter()->getRequestVar(), $_filter->getValue());
    $collection->addAttributeToFilter($_filter->getFilter()->getRequestVar(), array('like' => '%'.$_filter->getValue().'%'));
    for custom attributes being filterable in the layered navigation.

    There's one thing I'd like to achieve:
    If the CMS landing page lists all products where the multiselect attribute "taste" is "smokey" I don't want the layered navigation to display the attribute "taste".
    I know that I have to edit template/catalog/layer/view.phtml, but I don't know how I can get the attribute that has been set in the cms page with setAttributeName.

    Any hints?

  • todoslot

    GREAT EXTENSION. Works like a charm in Magento
    Thanks for this very useful info. Regards

  • Matteo Dini

    Hello, I tried this great extension but I have a small problem .. Attributes are not filtered properly ... 
        If I insert for example: 
        {{block type="Yoast_Filter/Result" 
        view even an attribute different from that specified .... In this example, I view attribute 24 and 4.
        Do not do it with all ... 
        How can I do? Thank you!

  • Matteo Dini

    Thank you Arwyl !!!

  • Eric

    Doesn't work with Magento Anybody knows a fix?

  • Hello, I am using a custom Ajax layered navigation from Template master. But the filters are not being applied to the collection filtered with the youst module, is there a way to make this work?

  • I'm getting a fatal error on

    Fatal error: Call to a member function getBackend() on a non-object in /var/www/vhosts/promotion/devel/app/code/core/Mage/Eav/Model/Entity/Abstract.php on line 816

    Is there a fix or an updated version available?

  • Fernando Amorim

    Is that possible to show on the Landing Page Layered Navigation the categories? Like this solution now, I can have attributes, but I would like to have Attributes and Categories to filter... Do you know if is it possible?