1. Magento: Get and set variables in session
?
To set a Magento session variable:
$myValue = 'Hello World';Mage::getSingleton('core/session')->setMyValue($myValue);?
To Retrieve:
$myValue = '';$myValue=Mage::getSingleton('core/session')->getMyValue();
?
To Unset:
Mage::getSingleton('core/session')->unsMyValue();
?
或者
/* Core Session */ Mage::getSingleton('core/session')->setYourVariable('data');$Data = Mage::getSingleton('core/session')->getYourVariable(); /* Customer Session */ Mage::getSingleton('customer/session')->setYourVariable('data');$Data = Mage::getSingleton('customer/session')->getYourVariable(); /* Admin Session */ Mage::getSingleton('admin/session')->setYourVariable('data');$Data = Mage::getSingleton('admin/session')->getYourVariable();
?
2. Magento’s Registry Pattern
?
The three registry methods are
Mage::registerMage::unregister Mage::registry?
The register
method is how you set a global-like variable.
Mage::register('some_name', $var);?
Then, later in the request execution, (from any method), you can fetch your variable back out
$my_var = Mage::registry('some_name');
?
Finally, if you want to make you variable unavailable, you can use the unregister
method to remove it from the registry.
Mage::unregister('some_name');?
更多参考: http://alanstorm.com/magento_registry_singleton_tutorial
?
3.? Create Global Function In Magento
?
This code will allow you to add a function that can be called from anywhere within Magento. It extends the helper class
?
1) Create a file named ‘Mycode.xml’ and copy it to app/etc/modules/ – it should look like this:
<?xml version="1.0"?><config> <modules> <Mycode_Function> <active>true</active> <codePool>local</codePool> </Mycode_Function> </modules></config>?
2) Create the directory app/code/local/Mycode/Function/etc and then create a file named ‘config.xml’ In it copy:
<?xml version="1.0"?><config> <modules> <Mycode_Function> <version>1.0.0</version> </Mycode_Function> </modules> <global> <helpers> <function> <class>Mycode_Function_Helper</class> </function> </helpers> </global> </config>?
3) Create the directory app/code/local/Mycode/Function/Helper and then create a file named ‘Data.php’ In it copy:
<?php class Mycode_Function_Helper_Data extends Mage_Core_Helper_Abstract{ public function test(){ return 'works'; } }?
You can now call this function like so
<?php echo Mage::helper('function')->test(); ?>?
来源: http://joe-riggs.com/blog/2011/06/create-global-function-in-magento/
?
?
本站相关:
?
1. 深入理解Magento-第九章-修改、扩展、重写Magento代码
2. magento 模块重写
?
?
?
?