config.xml override results in cart not visible? - php

I am building a second add to cart button with a different redirect on a magento platform.
The tutorial I've used is self explainatory. See here
It works okey as the redirect is in place.
The thing is: The cart itself doesnt show its page (cart.phtml) anymore.
Any idea how to fix this? Or where the problem exists?
If I remove the code underneath the cart is back again, as the redirect isn't working anymore.
File : config.xml
<global>
<routers>
<checkout>
<rewrite>
<cart>
<to>mycheckout/cart</to>
<override_actions>true</override_actions>
<actions>
<add>
<to>mycheckout/cart/add</to>
</add>
</actions>
</cart>
</rewrite>
</checkout>
</routers>
</global>

Seems like your extension does not extend the cart controller that you are overwriting making it impossible to display the methods from original controller

Related

Rewrite Sales Order Print Block in magento

I'm trying to rewrite sales order print block. to retrieve store vat number. But the field for the vat number is blank. this works fine when I create my function on the core.
here is my config.xml
app/code/local/Company/Sales/Block/etc/config.xml
<config>
<global>
<blocks>
<sales>
<rewrite>
<order_print>Invent_Sales_Block_Order_Print</order_print>
</rewrite>
</sales>
</blocks>
</global>
</config>
and here is my print.php
app/code/local/Company/Sales/Block/Order/Print.php
class Invent_Sales_Block_Order_Print extends Mage_Sales_Block_Order_Print
public function getVatNumber()
{
$storeVAT = Mage::getStoreConfig("general/store_information/merchant_vat_number");
return $storeVAT;
}
here is my print.phtml
app/design/frontend/theme/package/template/sales/order/print.phtml
<?php echo "VAT Number:".' '.$this->getVatNumber(); ?>
Your help would be appreciated. Thanks
I manged to fix this. I misplaced the etc directory. I placed in inside Block, instead of making it to be on the same level.
Thank you

Magento: Check if product is already in cart

Using magento for my shopping cart system. I have mini cart on top menu, when I added product it will show product title with price in mini cart. Currently have product quantity edit link but I need quantity box in mini cart to update quantity with ajax. I have followed this link http://ceckoslab.com/magento/magento-check-if-product-is-in-cart/, but getting following error
Fatal error: Class 'Mage_Smartview_Helper_Data' not found in /app/Mage.php on line 547
can anyone help me to resolve above error ?
When Magento is trying to look to Mage_Somemodule_ instead of your own module, it does means that it did not found your own file or your own module.
Three possible reasons :
Your module is not recognized at all, maybe something is wrong in your module definition
Something is wrong/mistyped in your config.xml
Something is wrong/mistyped in your class name
Be sure you have everything right from the tutorial and/or copy paste your code here so we can help further
In this case the two xml are wrong in the way that it should not ignore case sensitivity
CeckosLab_SmartView.xml
<?xml version="1.0"?>
<config>
<modules>
<CeckosLab_SmartView>
<active>true</active>
<codePool>local</codePool>
</CeckosLab_SmartView >
</modules>
</config>
config.xml
<?xml version="1.0"?>
<config>
<modules>
<CeckosLab_SmartView>
<version>1.0.0</version>
</CeckosLab_SmartView>
</modules>
<global>
<helpers>
<smartview>
<class>CeckosLab_SmartView_Helper</class>
</smartview>
</helpers>
</global>
</config>
please check it the Answer of stackoverflow
Click Here
In this link check this answer with 20 votes
Please check the releasenotes:
It will help you guide how to solve this issue
If your helper error contains Mage_ before your module, it means your helper is either not defined or defined incorrectly in your module's xml or you are calling it incorrectly.
If it is defined correctly this should work:
Mage::helper('smartview')->doSomething();
or try:
Mage::helper('ceckoslab_smartview')->doSomething();
Also, make sure you clear the cache as xml is cached heavily.
Hope this helps
Make enrty in config.xml
<global>
......
<helpers>
<test>
<class>Module_Test_Helper</class>
</test>
</helpers>
......
</global>
Create a Data.php file inside Helper folder and write following code
<?php
class Module_Test_Helper_Data extends Mage_Core_Helper_Abstract
{
}
Thats it you need to do now if you call this code it will not throw any error:
<?php Mage::helper("test")->actionname(); ?>

Magento translate.csv file not loading

I created a new package/theme/skin from scratch in Magento 1.9.1.
The theme and skin load fine. I tried adding translations and cannot get them to load. All cache settings are disabled.
I've added the CSV file here:
/app/design/frontend/{my_package}/{my_theme}/locale/en_US/translate.csv
translate.csv:
"testing123","Translation Worked"
header.phtml
<?= $this->__('testing123') ?>
I added {my_theme}, which for me is named "responsive" to the admin at the :
The result is the header displaying 'testing123' instead of the translated 'Translation Worked'. What have I missed? How do I troubleshoot this?
Update:
I've also added translate.csv to config.xml (and it still does not work). However, It DOES work if I move the translate.csv to app/locale/en_US but it DOES NOT work in app/design/frontend/{my_package}/{my_theme}/locale/en_US/translate.csv where I want it. How can I tell it to load from the theme folder?
config.xml:
<?xml version="1.0"?>
<config>
<modules>
<MyModule_Templates>
<version>0.1.0</version>
</MyModule_Templates>
</modules>
<frontend>
<translate>
<modules>
<MyModule_Templates>
<files>
<default>translate.csv</default>
</files>
</MyModule_Templates>
</modules>
</translate>
</frontend>
<global>
<page>
<layouts>
<mymodule_default translate="label">
<label>MyModule Default Layout</label>
<template>page/default.phtml</template>
<layout_handle>mymodule_default</layout_handle>
</mymodule_default>
</layouts>
</page>
</global>
</config>
Seems, You forgot to add translate.csv to your module's config.xml.
Please take a look.
http://inchoo.net/magento/how-to-add-your-own-translations-to-custom-modules/
i struggled with the same problem. Solution for me was to change the translation Source in the Admin Area.
Go to : Configuration -> select your Store view ( new Translation ) -> General -> under "options for localisation" uncheck the box and choose which translation you want to use. Afterwards, the translate.csv gets loaded and the translation works.
Cheers,
moktor

Magento Custom filter approch

I am implementing a custom refine search functionality on product list page in magento
There are 4 attributes which will be using like color,size etc.
for this i have created a custom module which has a block.
I want to use this block on product list catalog page.
I am trying to put following in catalog.xml in my custom theme
<block type="filter/form" name="filter.form" template="catalog/navigation/filter.phtml" />
Where filter is my custom module, but somehow it is not working.
Am i going with wrong approch , if yes, Please suggest me the steps to implement custom filtering on product list page.
blocks parts in config.xml
<global>
<blocks>
<Webonise_Filter>
<class>Webonise_Filter_Block</class>
</Webonise_Filter>
</blocks>
<helpers>
<Webonise_Filter>
<class>Webonise_Filter_Helper</class>
</Webonise_Filter>
</helpers>
</global>
I advise you to change your config to :
<global>
<blocks>
<webonisefilter>
<class>Webonise_Filter_Block</class>
</webonisefilter>
</blocks>
<helpers>
<webonisefilter>
<class>Webonise_Filter_Helper</class>
</webonisefilter>
</helpers>
</global>
And then you can call your block with :
<block type="webonisefilter/form" name="filter.form" template="catalog/navigation/filter.phtml" />
The underscore is not always correctly interpreted. The idea is to get the shortcut from you config.xml and use it in your layout.xml. You need to have a block called Webonise_Filter_Block_Form to match webonisefilter/form.

How to change URL on a magento extension?

I want to know how I can change the URL of my checkout cart. Whenever I continue to checkout or click on the checkout button, I get to the URL: mypage.com/onepagecheckout
I'm using this extension: http://www.magentocommerce.com/magento-connect/one-page-checkout.html
The only way I got it working was making one rewrite and a redirect, one rewrite from "onepagecheckout" to "checkout" and another one permanent redirect from "onepagecheckout" to "checkout". I don't think this method is best practice, so I would like to know if there's a better option.
I tried going to the app/code/community/IWD/OnepaceCheckout/etc/config.xml and changed frontname to "checkout", but even that did not change anything.
Thanks for your time and help would be greatly appreciated!
Please check in config.xml.here you found that onepagecheckout
just change onepagecheckout according
<frontend>
<routers>
.......
<use>standard</use>
<args>
<module>IWD_OnepaceCheckout/</module>
<frontName>onestepcheckout</frontName>
</args>
.......
</routers>
also changed it onestepcheckout.xml accoding to you wish frontName
Solved the problem by changing the in config.xml on both standard and admin.

Categories