- 浏览: 196941 次
- 性别:
- 来自: 成都
文章分类
最新评论
-
guji528:
使用Python通过正则表达式替换很方便:
sprin ...
Python正则表达式指南 -
guji528:
很实用,先keep再看
Python正则表达式指南 -
yushine:
1,2,3,5 已经做了剩下的本来也正准备做。
2012, 每一个软件工程师必须做的11件事 -
mynetstudy:
用导出不就可以了吗
递归删除SVN工作目录下的.svn目录
Magento 常用技巧与方法
- 博客分类:
- Magento
1:获取session
$session = Mage::getSingleton('customer/session');
2:Request对象
Mage::app()->getRequest()
3:调用Model对象
Mage::getModel('infinity/model');
4:获取当前时间
Mage::getModel('core/date')->date();
date("Y-m-d", Mage::getModel('core/date')->timestamp(time()));
5:session,cookie设置
5.1 Model:
Mage::getModel(‘core/cookie’);
Mage::getModel(‘core/session’);
5.2 Set Method:
Mage::getSingleton(‘core/cookie’)->set(‘name’,'value’);
Mage::getSingleton(‘core/session’)->set(‘name’,'value’);
5.3 Get method:
Mage::getSingleton(‘core/cookie’)->get(‘name’);
Mage::getSingleton(‘core/session’)->get(‘name’);
6:输出配置文件
//header(‘Content-Type: text/xml’);
header(‘Content-Type: text/plain’);
echo $config = Mage::getConfig()
->loadModulesConfiguration(‘system.xml’)
->getNode()
->asXML();
exit;
7:Get URL for a Magento
Category
Mage::getModel('catalog/category')->load(17)->getUrl();
8:build your URL with valid keys
Mage::helper("adminhtml")->getUrl("mymodule/adminhtml_mycontroller/myaction/",array("param1"=>1,"param2"=>2));
9:create key values
Mage::getSingleton('adminhtml/url')->getSecretKey("adminhtml_mycontroller","myaction");
10:disable security feature in the admin panel
admin panel -> System -> Configuration -> Admin section: “Add Secret key to Urls”.
11:后台模块跳转:
Mage::app()->getResponse()->setRedirect(Mage::helper('adminhtml')->getUrl("adminhtml/promo_quote/index"));
12:产品属性操作
$product = Mage::getModel('catalog/product')->getCollection()->getFirstItem();
foreach($product->getAttributes() as $att)
{
$group_id = $att->getData('attribute_group_id');
$group = Mage::getModel('eav/entity_attribute_group')->load($group_id);
var_dump($group);
}
$attrSetName = 'my_custom_attribute';
$attributeSetId = Mage::getModel('eav/entity_attribute_set')
->load($attrSetName, 'attribute_set_name')
->getAttributeSetId();
13:get a drop down lists options for a mulit-select attribute
$attribute = Mage::getModel('eav/config')->getAttribute('catalog_product', 'attribute_id');
foreach ( $attribute->getSource()->getAllOptions(true, true) as $option){
$attributeArray[$option['value']] = $option['label'];
}
14:或取栏目图片
public function getImageUrl($category)
{
return Mage::getModel('catalog/category')->load($category->getId())->getImageUrl();
}
public function getThumbnailUrl($category)
{
$image=Mage::getModel('catalog/category')->load($category->getId())->getThumbnail();
if ($image) {
$url = Mage::getBaseUrl('media').'catalog/category/'.$image;
}
return $url;
}
15:产品缩略图
$_thumb = Mage::helper('catalog/image')->init($product, 'thumbnail')->resize(50, 50)->setWatermarkSize('30x10');
16:判断是否首页:$this->getIsHomePage()
Mage::getSingleton('cms/page')->getIdentifier() == 'home' &&
Mage::app()->getFrontController()->getRequest()->getRouteName() == 'cms'
)
17:
$cms_id = Mage::getSingleton('cms/page')->getIdentifier();
$cms_title = Mage::getSingleton('cms/page')->getTitle();
$cms_content = Mage::getSingleton('cms/page')->getContent();
18 :
$attributes = $_product->getAttributes();
$themeColor = $attributes['theme_color']->getFrontend()->getValue($_product);
19:获取configurable产品simple product
if($_product->getTypeId() == "configurable"):
$ids = $_product->getTypeInstance()->getUsedProductIds();
foreach ($ids as $id) :
$simpleproduct = Mage::getModel('catalog/product')->load($id);
$simpleproduct->getName()." - ".(int)Mage::getModel('cataloginventory/stock_item')->loadByProduct($simpleproduct)->getQty();
$childProducts = Mage::getModel('catalog/product_type_configurable')->getUsedProducts(null, $product);
20: get the attributes of Configurable Product.
$attributes = $product->getTypeInstance(true)->getConfigurableAttributes($product);
21:当前路径
$currentUrl = $this->helper('core/url')->getCurrentUrl();
22:通过资源配置方式创建目录
$installer = $this;
$installer->startSetup();
// make directory for font cache
try {
$domPdfFontCacheDir = join(DS, array('lib', 'Symmetrics', 'dompdf', 'fonts'));
$domPdfFontCacheDir = Mage::getBaseDir('var') . DS . $domPdfFontCacheDir;
if (!file_exists($domPdfFontCacheDir)) {
mkdir($domPdfFontCacheDir, 0777, true);
}
} catch(Exception $e) {
throw new Exception(
'Directory ' . $domPdfFontCacheDir . ' is not writable or couldn't be '
. 'created. Please do it manually.' . $e->getMessage()
);
}
$installer->endSetup();
23:
wishlist_linkHomeHometrue0HelphelpHelptrue90My AccountMy Account10example
exampleexampletrue100class="top-link-example"
24:在controllers 实现跳转
Mage::app()->getFrontController()
->getResponse()
->setRedirect('http://your-url.com');
25:获取当前站点货币符号
$storeId = (int) $this->getRequest()->getParam('store', 0);
$store=Mage::app()->getStore($storeId);
$currencyCode=$store->getBaseCurrency()->getCode()
$attribute = Mage::getModel('catalog/resource_eav_attribute')->load($attributeId);
$attributeData = $attribute->getData();
$frontEndLabel = $attributeData['frontend_label'];
$attributeOptions = $attribute->getSource()->getAllOptions();
26:获取产品属性集
$sets = Mage::getResourceModel('eav/entity_attribute_set_collection')
->setEntityTypeFilter(Mage::getModel('catalog/product')->getResource()->getTypeId())
->load()
->toOptionHash();
27:magento
使用sql
$resource = Mage::getSingleton('core/resource');
$read= $resource->getConnection('core_read');
$tempTable = $resource->getTableName('infinity_contacts');
$_storeid = Mage::app()->getStore()->getId();
$wheres = "`status`=1 AND ( FIND_IN_SET(0, `store_id`)>0 OR FIND_IN_SET($_storeid, `store_id`)>0 )";
$select = $read->select()
->from($tempTable, array('count(*) as num'))
->where($wheres);
28:设置meta信息
$template = Mage::getConfig()->getNode('global/page/layouts/'.Mage::getStoreConfig("featuredproducts/general/layout").'/template');
$this->loadLayout();
$this->getLayout()->getBlock('root')->setTemplate($template);
$this->getLayout()->getBlock('head')->setTitle($this->__(Mage::getStoreConfig("featuredproducts/general/meta_title")));
$this->getLayout()->getBlock('head')->setDescription($this->__(Mage::getStoreConfig("featuredproducts/general/meta_description")));
$this->getLayout()->getBlock('head')->setKeywords($this->__(Mage::getStoreConfig("featuredproducts/general/meta_keywords")));
$this->renderLayout();
29.加载某个attribute:
$attributeCode=Mage::getModel('catalog/resource_eav_attribute')
->load($attrbuteId)
->getData("attribute_code");
30.获取某个attribute的所有option:
$attributeObject=Mage::getModel('eav/config')->getAttribute('catalog_product')->load($attributeId);
$options = $attributeObject->setStoreId(Mage::app()->getStore()->getId())->getSource()->getAllOptions(false);
$table = $attributeObject->getBackend()->getTable();
public function getAttributeOptionsByAttributeCode($entityType, $attributeCode){
$entityType = Mage::getSingleton('eav/config')->getEntityType($entityType);
$attributeObject = Mage::getModel('customer/attribute')->loadByCode($entityType, $attributeCode);
return $attributeObject->setStoreId(Mage::app()->getStore()->getId())->getSource()->getAllOptions(false);
}
或者:
$optionCollection = Mage::getResourceModel('eav/entity_attribute_option_collection')
->setAttributeFilter($attr_model->getId())
->setStoreFilter($storeId, false)
->load();
31.获取某个attribute的所有多语言label:
$attributeLabelsArray= Mage::getResourceModel('eav/entity_attribute')
->getStoreLabelsByAttributeId($attrbuteId);
32.获取所有的产品属性的attribute:
$attributes = Mage::getResourceModel ( 'catalog/product_attribute_collection' )
->addFieldToFilter ( "frontend_input", "select" )
->load ();
33.获取某个product的所有attribute:
注:如果是在collection中获取自定义的attribute,必须加addAttributeToSelect(), 如下:
product=Mage::getModel('catalog/product')->getCollection()->addAttributeToSelect("dropdownlistone");
34.利用静态block
getLayout()->createBlock('clientnumber/widget_name')
->setObject($this->getAddress())
->toHtml() ?>
35.获取某个种类的所有attribute:
$entityTypeId = Mage::getSingleton('eav/config')
->getEntityType('catalog_product')
->getEntityTypeId();
$items = Mage::getResourceSingleton('catalog/product_attribute_collection')
->setEntityTypeFilter($entityTypeId)
->getItems();
36.获取某个attribute_set的所有attribute:
$attributes = Mage::getResourceModel('catalog/product_attribute_collection')
->setAttributeSetFilter($attribute_set_id)
->load();
$attributeSetCollection = Mage::getResourceModel('eav/entity_attribute_set_collection')
->load();
37.获取attribute 对象 by attribute code
$muarqspFrom = Mage::getSingleton('eav/config')->getAttribute('catalog_product', '
muarqsp_from');
$attrCollection = Mage::getResourceModel('eav/entity_attribute_collection')
->setCodeFilter($attributeCode)
->load();
$session = Mage::getSingleton('customer/session');
2:Request对象
Mage::app()->getRequest()
3:调用Model对象
Mage::getModel('infinity/model');
4:获取当前时间
Mage::getModel('core/date')->date();
date("Y-m-d", Mage::getModel('core/date')->timestamp(time()));
5:session,cookie设置
5.1 Model:
Mage::getModel(‘core/cookie’);
Mage::getModel(‘core/session’);
5.2 Set Method:
Mage::getSingleton(‘core/cookie’)->set(‘name’,'value’);
Mage::getSingleton(‘core/session’)->set(‘name’,'value’);
5.3 Get method:
Mage::getSingleton(‘core/cookie’)->get(‘name’);
Mage::getSingleton(‘core/session’)->get(‘name’);
6:输出配置文件
//header(‘Content-Type: text/xml’);
header(‘Content-Type: text/plain’);
echo $config = Mage::getConfig()
->loadModulesConfiguration(‘system.xml’)
->getNode()
->asXML();
exit;
7:Get URL for a Magento
Category
Mage::getModel('catalog/category')->load(17)->getUrl();
8:build your URL with valid keys
Mage::helper("adminhtml")->getUrl("mymodule/adminhtml_mycontroller/myaction/",array("param1"=>1,"param2"=>2));
9:create key values
Mage::getSingleton('adminhtml/url')->getSecretKey("adminhtml_mycontroller","myaction");
10:disable security feature in the admin panel
admin panel -> System -> Configuration -> Admin section: “Add Secret key to Urls”.
11:后台模块跳转:
Mage::app()->getResponse()->setRedirect(Mage::helper('adminhtml')->getUrl("adminhtml/promo_quote/index"));
12:产品属性操作
$product = Mage::getModel('catalog/product')->getCollection()->getFirstItem();
foreach($product->getAttributes() as $att)
{
$group_id = $att->getData('attribute_group_id');
$group = Mage::getModel('eav/entity_attribute_group')->load($group_id);
var_dump($group);
}
$attrSetName = 'my_custom_attribute';
$attributeSetId = Mage::getModel('eav/entity_attribute_set')
->load($attrSetName, 'attribute_set_name')
->getAttributeSetId();
13:get a drop down lists options for a mulit-select attribute
$attribute = Mage::getModel('eav/config')->getAttribute('catalog_product', 'attribute_id');
foreach ( $attribute->getSource()->getAllOptions(true, true) as $option){
$attributeArray[$option['value']] = $option['label'];
}
14:或取栏目图片
public function getImageUrl($category)
{
return Mage::getModel('catalog/category')->load($category->getId())->getImageUrl();
}
public function getThumbnailUrl($category)
{
$image=Mage::getModel('catalog/category')->load($category->getId())->getThumbnail();
if ($image) {
$url = Mage::getBaseUrl('media').'catalog/category/'.$image;
}
return $url;
}
15:产品缩略图
$_thumb = Mage::helper('catalog/image')->init($product, 'thumbnail')->resize(50, 50)->setWatermarkSize('30x10');
16:判断是否首页:$this->getIsHomePage()
Mage::getSingleton('cms/page')->getIdentifier() == 'home' &&
Mage::app()->getFrontController()->getRequest()->getRouteName() == 'cms'
)
17:
$cms_id = Mage::getSingleton('cms/page')->getIdentifier();
$cms_title = Mage::getSingleton('cms/page')->getTitle();
$cms_content = Mage::getSingleton('cms/page')->getContent();
18 :
$attributes = $_product->getAttributes();
$themeColor = $attributes['theme_color']->getFrontend()->getValue($_product);
19:获取configurable产品simple product
if($_product->getTypeId() == "configurable"):
$ids = $_product->getTypeInstance()->getUsedProductIds();
foreach ($ids as $id) :
$simpleproduct = Mage::getModel('catalog/product')->load($id);
$simpleproduct->getName()." - ".(int)Mage::getModel('cataloginventory/stock_item')->loadByProduct($simpleproduct)->getQty();
$childProducts = Mage::getModel('catalog/product_type_configurable')->getUsedProducts(null, $product);
20: get the attributes of Configurable Product.
$attributes = $product->getTypeInstance(true)->getConfigurableAttributes($product);
21:当前路径
$currentUrl = $this->helper('core/url')->getCurrentUrl();
22:通过资源配置方式创建目录
$installer = $this;
$installer->startSetup();
// make directory for font cache
try {
$domPdfFontCacheDir = join(DS, array('lib', 'Symmetrics', 'dompdf', 'fonts'));
$domPdfFontCacheDir = Mage::getBaseDir('var') . DS . $domPdfFontCacheDir;
if (!file_exists($domPdfFontCacheDir)) {
mkdir($domPdfFontCacheDir, 0777, true);
}
} catch(Exception $e) {
throw new Exception(
'Directory ' . $domPdfFontCacheDir . ' is not writable or couldn't be '
. 'created. Please do it manually.' . $e->getMessage()
);
}
$installer->endSetup();
23:
wishlist_linkHomeHometrue0HelphelpHelptrue90My AccountMy Account10example
exampleexampletrue100class="top-link-example"
24:在controllers 实现跳转
Mage::app()->getFrontController()
->getResponse()
->setRedirect('http://your-url.com');
25:获取当前站点货币符号
$storeId = (int) $this->getRequest()->getParam('store', 0);
$store=Mage::app()->getStore($storeId);
$currencyCode=$store->getBaseCurrency()->getCode()
$attribute = Mage::getModel('catalog/resource_eav_attribute')->load($attributeId);
$attributeData = $attribute->getData();
$frontEndLabel = $attributeData['frontend_label'];
$attributeOptions = $attribute->getSource()->getAllOptions();
26:获取产品属性集
$sets = Mage::getResourceModel('eav/entity_attribute_set_collection')
->setEntityTypeFilter(Mage::getModel('catalog/product')->getResource()->getTypeId())
->load()
->toOptionHash();
27:magento
使用sql
$resource = Mage::getSingleton('core/resource');
$read= $resource->getConnection('core_read');
$tempTable = $resource->getTableName('infinity_contacts');
$_storeid = Mage::app()->getStore()->getId();
$wheres = "`status`=1 AND ( FIND_IN_SET(0, `store_id`)>0 OR FIND_IN_SET($_storeid, `store_id`)>0 )";
$select = $read->select()
->from($tempTable, array('count(*) as num'))
->where($wheres);
28:设置meta信息
$template = Mage::getConfig()->getNode('global/page/layouts/'.Mage::getStoreConfig("featuredproducts/general/layout").'/template');
$this->loadLayout();
$this->getLayout()->getBlock('root')->setTemplate($template);
$this->getLayout()->getBlock('head')->setTitle($this->__(Mage::getStoreConfig("featuredproducts/general/meta_title")));
$this->getLayout()->getBlock('head')->setDescription($this->__(Mage::getStoreConfig("featuredproducts/general/meta_description")));
$this->getLayout()->getBlock('head')->setKeywords($this->__(Mage::getStoreConfig("featuredproducts/general/meta_keywords")));
$this->renderLayout();
29.加载某个attribute:
$attributeCode=Mage::getModel('catalog/resource_eav_attribute')
->load($attrbuteId)
->getData("attribute_code");
30.获取某个attribute的所有option:
$attributeObject=Mage::getModel('eav/config')->getAttribute('catalog_product')->load($attributeId);
$options = $attributeObject->setStoreId(Mage::app()->getStore()->getId())->getSource()->getAllOptions(false);
$table = $attributeObject->getBackend()->getTable();
public function getAttributeOptionsByAttributeCode($entityType, $attributeCode){
$entityType = Mage::getSingleton('eav/config')->getEntityType($entityType);
$attributeObject = Mage::getModel('customer/attribute')->loadByCode($entityType, $attributeCode);
return $attributeObject->setStoreId(Mage::app()->getStore()->getId())->getSource()->getAllOptions(false);
}
或者:
$optionCollection = Mage::getResourceModel('eav/entity_attribute_option_collection')
->setAttributeFilter($attr_model->getId())
->setStoreFilter($storeId, false)
->load();
31.获取某个attribute的所有多语言label:
$attributeLabelsArray= Mage::getResourceModel('eav/entity_attribute')
->getStoreLabelsByAttributeId($attrbuteId);
32.获取所有的产品属性的attribute:
$attributes = Mage::getResourceModel ( 'catalog/product_attribute_collection' )
->addFieldToFilter ( "frontend_input", "select" )
->load ();
33.获取某个product的所有attribute:
注:如果是在collection中获取自定义的attribute,必须加addAttributeToSelect(), 如下:
product=Mage::getModel('catalog/product')->getCollection()->addAttributeToSelect("dropdownlistone");
34.利用静态block
getLayout()->createBlock('clientnumber/widget_name')
->setObject($this->getAddress())
->toHtml() ?>
35.获取某个种类的所有attribute:
$entityTypeId = Mage::getSingleton('eav/config')
->getEntityType('catalog_product')
->getEntityTypeId();
$items = Mage::getResourceSingleton('catalog/product_attribute_collection')
->setEntityTypeFilter($entityTypeId)
->getItems();
36.获取某个attribute_set的所有attribute:
$attributes = Mage::getResourceModel('catalog/product_attribute_collection')
->setAttributeSetFilter($attribute_set_id)
->load();
$attributeSetCollection = Mage::getResourceModel('eav/entity_attribute_set_collection')
->load();
37.获取attribute 对象 by attribute code
$muarqspFrom = Mage::getSingleton('eav/config')->getAttribute('catalog_product', '
muarqsp_from');
$attrCollection = Mage::getResourceModel('eav/entity_attribute_collection')
->setCodeFilter($attributeCode)
->load();
发表评论
-
Magento: Overriding Core Files (Blocks, Models, Resources, Controllers)
2013-04-07 11:03 971When building custom module ... -
Magento模板及布局文件中引用Static Block的方法
2013-03-21 10:25 1256Static Block是Magento提供的非常实用的一种 ... -
Magento2, 我们在等你
2013-03-07 10:49 1211文章前面我要说明,Magento2.0和1.X是完全不同的 ... -
magento admin form 表单元素大全
2013-03-05 11:01 9281.input type=”t ... -
magento几种全页缓冲加速Full Page Cache插件试用心得
2013-03-04 23:47 3999magento的速度确实比较慢,但有全页缓冲,速度很快的由于 ... -
magento开发必备插件列表汇总
2013-02-22 13:27 2623magento和wordpress一样,因为开放而倍加优秀 ... -
[转载]magento事件清单
2012-07-31 10:50 1577Magento Community Edition事 ... -
Magento - 返回不带Layout的页面输出
2012-07-26 17:47 1051你至少有三种方法可以返回不带Layout的页面输出 1. ... -
Magento获取文件路径函数(参考大全)
2012-05-30 15:46 1508假设网站根目录为:E:\www\magentoeye.com\ ...
相关推荐
magento 常用的方法 与 总结, 对于起步学习magento 的非常有帮助
NULL 博文链接:https://hudeyong926.iteye.com/blog/1416591
magento常用插件,安装magento必备哦!
magento SQL常用命令,数据库操作
magento的SMTP插件magento的SMTP插件magento的SMTP插件
magento数据结构分析 magento数据字典
主要包括的内容有:magento的常用设置、Magento模板制作教程、Magento商城_目录结构说明、Magento中文教程实用文档、常用的xml的文件的作用以及自定义模块的应用
magento的常用设置实用.pdf
magik shoes magento 模板, magento 1.7 模板
magento1.9 邮件发送失败解决方法,附带视频教程和图片,文字和修改好的文件,只测试过1.9版本. 其他版本没遇到这个问题
magento csv多图批量导入 解决方法
magento 功能与结构的介绍 英文版
深入理解Magento 由精东博客下载下来制作成pdf
Magento插件开发手册 Magento Extension Developers Guide
Athlete Magento主题,兼容Magento 1.9.x, 1.8.x, 1.7.x ,特点:完全自适应(响应式布局),自定义子主题,无限颜色,完全自定义,一键安装演示,小工具化横幅系统,颜色选择,MEGA菜单,多商店支持,自定义产品...
Magento Magento商城 Magento目录结构