0

In a multistore setup one of the installed themes is conflicting with the other themes.

The -conflicting- theme itself works perfectly, yet the product pages in the other stores (with different themes) are not displaying anymore and they generate the following error:

2014-12-05T19:42:25+00:00 ERR (3):
exception 'Mage_Core_Exception' with message 'Invalid block type: Anowave_One_Block_Product' in /var/www/magento.live/htdocs/app/Mage.php:595
Stack trace:
#0 /var/www/magento.live/htdocs/app/code/core/Mage/Core/Model/Layout.php(495): Mage::throwException('Invalid block t...')
#1 /var/www/magento.live/htdocs/app/code/core/Mage/Core/Model/Layout.php(437): Mage_Core_Model_Layout->_getBlockInstance('catalog/product...', Array)
#2 /var/www/magento.live/htdocs/app/code/core/Mage/Core/Model/Layout.php(472): Mage_Core_Model_Layout->createBlock('catalog/product...', 'product.info')
#3 /var/www/magento.live/htdocs/app/code/core/Mage/Core/Model/Layout.php(239): Mage_Core_Model_Layout->addBlock('catalog/product...', 'product.info')
#4 /var/www/magento.live/htdocs/app/code/core/Mage/Core/Model/Layout.php(205): Mage_Core_Model_Layout->_generateBlock(Object(Mage_Core_Model_Layout_Element), Object(Mage_Core_Model_Layout_Element))
#5 /var/www/magento.live/htdocs/app/code/core/Mage/Core/Model/Layout.php(210): Mage_Core_Model_Layout->generateBlocks(Object(Mage_Core_Model_Layout_Element))
#6 /var/www/magento.live/htdocs/app/code/core/Mage/Core/Controller/Varien/Action.php(344): Mage_Core_Model_Layout->generateBlocks()
#7 /var/www/magento.live/htdocs/app/code/core/Mage/Catalog/Helper/Product/View.php(73): Mage_Core_Controller_Varien_Action->generateLayoutBlocks()
#8 /var/www/magento.live/htdocs/app/code/core/Mage/Catalog/Helper/Product/View.php(144): Mage_Catalog_Helper_Product_View->initProductLayout(Object(Mage_Catalog_Model_Product), Object(Mage_Catalog_ProductController))
#9 /var/www/magento.live/htdocs/app/code/core/Mage/Catalog/controllers/ProductController.php(132): Mage_Catalog_Helper_Product_View->prepareAndRender(179, Object(Mage_Catalog_ProductController), Object(Varien_Object))
#10 /var/www/magento.live/htdocs/app/code/core/Mage/Core/Controller/Varien/Action.php(418): Mage_Catalog_ProductController->viewAction()
#11 /var/www/magento.live/htdocs/app/code/core/Mage/Core/Controller/Varien/Router/Standard.php(250): Mage_Core_Controller_Varien_Action->dispatch('view')
#12 /var/www/magento.live/htdocs/app/code/core/Mage/Core/Controller/Varien/Front.php(172): Mage_Core_Controller_Varien_Router_Standard->match(Object(Mage_Core_Controller_Request_Http))
#13 /var/www/magento.live/htdocs/app/code/core/Mage/Core/Model/App.php(354): Mage_Core_Controller_Varien_Front->dispatch()
#14 /var/www/magento.live/htdocs/app/Mage.php(684): Mage_Core_Model_App->run(Array)
#15 /var/www/magento.live/htdocs/index.php(90): Mage::run('launchportshop_...', 'store')
#16 {main}

This theme comes with an extension that pours some special sauce, and I did find the following in the modules /app/code/local/Anowave/One/etc/local.xml:

    <blocks>
        <one>
            <class>Anowave_One_Block</class>
        </one>
        <core>
            <rewrite>
                <html_select>Anowave_One_Block_Core_Html_Select</html_select>
            </rewrite>
        </core>
        <catalog>
            <rewrite>
                <product_view>Anowave_One_Block_Product</product_view>
                <product_price>Anowave_One_Block_Product_Price</product_price>
            </rewrite>
        </catalog>
    </blocks>

I'm pretty sure that this is the cause of the problem. However, the big question is: How do I rewrite this so that the stores using this (anowave) theme keep working and the others start working again....

  • Can you post your block's code? Something wasn't setup right. – kab8609 Dec 5 '14 at 20:08
  • 1
    @kab8609 thanks for pointing me in the right direction. There was no Product.php file..... – Ottonet Dec 5 '14 at 20:19
  • Are you sure you have all the files? Where was this theme from? – kab8609 Dec 5 '14 at 20:20
  • @kab8609 there is actually no need for Product.php. See my answer for a more comprehensive explanation. Theme is Onewave, from anowave.com; currently one of the only themes, if not the only theme for just one single product. It looks amazing, but too bad the theme is buggy as hell and not really multi-store(view) aware. Dev took it offline in the meantime and is rewriting big parts based on my bug reports ... – Ottonet Dec 5 '14 at 20:30
  • 1
    @kab8609. I wish I could. Have to wait another day before I am allowed to do so. Apparently it takes 2 days before you can accept your own answer. :-( – Ottonet Dec 6 '14 at 22:44
0

The publisher of this theme left code in config.xml that was not used anymore/at all. Not a problem in this theme itself, as it actually didn't use (!), just - and as there is a Block/Product/Price.php .... this didn't lead to errors.

However, a few days ago I found a problem with Price.php (https://magento.stackexchange.com/questions/46185/how-to-fix-class-x-extends-class-y-conflict) and by moving this code to the .phtml file in question I actually made Price.php useless.

So this problem is fixed by removing the following lines from config.xml:

    <catalog>
        <rewrite>
            <product_view>Anowave_One_Block_Product</product_view>
            <product_price>Anowave_One_Block_Product_Price</product_price>
        </rewrite>
    </catalog>

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.