国际电子商务技术 & Magento开发公司

Maishen technologies

Welcome visitor! You canlogin orcreate an account.

热线:+86-0532-58973093

麦神科技有限公司
Mygod Technologies

官方认证开发工程师

magento 判断当前页面是否是首页

2012年4月24日星期二 Asia/Shanghai上午11:29:39

 

在magento使用过程中,有时候需要做一些页面判断的事情,譬如:判断当前页面是否是首页,如果是,如果不是,做相应的事情,可以执行下面的代码,判断出当前页面是否首页,do...里面执行的是当前页面是首页的情况下执行的代码!

<?php if(
Mage::getSingleton('cms/page')->getIdentifier() == 'home'  &&
Mage::app()->getFrontController()->getRequest()->getRouteName() == 'cms' 
){

do ....;
}

 ?>
OK,完毕,搞定!

0 Comments | Posted in Magento开发 By terry water

 

Call to a member function getModelInstance() on a non-object in /home/cdesigns/public_html/site/app/Mage.php on line 314

当使用

require("../app/Mage.php");


$products = Mage::getModel('catalog/product')->getCollection();

等一些Mage的方法的时候会报错,这是因为没有选择store

加上一句

$app = Mage::app('default');

即可解决!

magento的初始化的一些变量,需要给予赋值!尤其是我们想在magento的外面自己新建一个文件,通过magento的机制操作magento的数据表时候,譬如通过require("../app/Mage.php");包含magento的入口文件,然后把初始化参数设定,就可以使用这个函数的方法快捷的操作!

0 Comments | Posted in Magento开发 By terry water

在magento之外的程序文件使用magento的东西

2012年3月16日星期五 Asia/Shanghai上午3:10:22

如果我们想做一些操作,但是不想通过magento内部走

可以这么操作

app/mage.php是magento的入口文件,加载了这个文件就可以使用magento里面的东西了

下面是代码示例:

1

1 require_once($_SERVER['DOCUMENT_ROOT'].'/app/Mage.php');
2 $app = Mage::app();
3 Mage::getSingleton('core/session', array('name' => 'frontend'));

2

得到static block

require("../app/Mage.php");

echo Mage::app()->getLayout()->createBlock('cms/block')->setBlockId('tagsearch')->toHtml() ;

3

$cart = $app->getLayout()->getBlockSingleton('checkout/cart_sidebar')->setTemplate("checkout/topcart.phtml")->toHtml();

 

1 <?php echo $cart; ?> <!-- we now echo the cart this will bring back the following -->
2 <div id="minibasket">
3 <div id="introlley">
4  <a href="/checkout/cart" title="View/Edit Your Basket">  2 items<br />
5  total: <span>£24<span>.98</span></span></a>
6 </div>
7 <a href="/checkout/cart" title="View and Edit Basket"><img src="/images/trollystates/3b.png" width="46" height="33" alt="Trolley" id="trollied" /></a>
8 <div id="checkitout"><a title="Checkout"  href="/checkout/onepage/">Proceed to<br /><span>Checkout &raquo;</span></a></div>
9 </div>

这样可以更加方便灵活的使用magento的机制!

0 Comments | Posted in Magento开发 By terry water

如何使用magento的csv文件导入导出功能

2012年3月14日星期三 Asia/Shanghai下午11:33:33

magento自己带有导入导出功能

后台system-->import/export-->Advanced Profiles

进入后点击add new profiles

就可以新建一个规则了

Profile Name *是名字

Actions XML *是对应的参数

譬如例子:

<action type="dataflow/convert_adapter_io" method="load">
    <var name="type">file</var>
    <var name="path">var/import</var>
    <var name="filename"><![CDATA[configproduct.csv]]></var>
    <var name="format"><![CDATA[csv]]></var>
</action>

<action type="dataflow/convert_parser_csv" method="parse">
    <var name="delimiter"><![CDATA[,]]></var>
    <var name="enclose"><![CDATA["]]></var>
    <var name="fieldnames">true</var>
    <var name="store"><![CDATA[0]]></var>
    <var name="number_of_records">1</var>
    <var name="root_catalog_id"><![CDATA[2]]></var>
    <var name="reimport_images"><![CDATA[true]]></var>
    <var name="deleteall_andreimport_images"><![CDATA[true]]></var>
    <var name="exclude_images"><![CDATA[false]]></var>
    <var name="exclude_gallery_images"><![CDATA[false]]></var>
    <var name="decimal_separator"><![CDATA[.]]></var>
    <var name="adapter">catalog/convert_adapter_productimport</var>
    <var name="method">parse</var>
</action>
解析:

 

file是文件类型

path是csv文件路径

filename是csv文件名字

format是csv格式

后面的配置是相应的文件格式

用他,可以导入您想要导入的数据,也就是magento实现了这个csv导入的框架,在相应的文件

catalog/convert_adapter_productimport

public function saveRow( array $importData )函数里面$importData

这个数据就是csv文件中的一行,每一列是这个数组中的一个元素!

然后使用magento的机制保存就可以了

上面我只是大致的一说,具体的研究,您可以下载一个免费的magento导入导出插件。然后研究里面的代码,然后就是研究如何插入数据,譬如写一个给现有产品批量导入tag的函数,例子如下:

public function saveRow( array $importData )
    {
        // store tag_name products_sku
        //var_dump($importData);
        $product = $this->getProductModel();
        $tagName = $importData['tag_name'];


        if ( isset( $importData['products_sku'] ) && $importData['products_sku'] !="" ) {
        
            
            $products_sku = explode(',', $importData['products_sku']);

            $tagModel = Mage::getModel('tag/tag');
                $result = $tagModel->loadByName($tagName);
                $tagModel->setName($tagName)
                                    ->setStoreId($importData['store'])
                                    ->setStatus(1)
                                    ->save();

            foreach ($products_sku as $product_sku) {
                try {
                
                
                        //    echo $product -> getIdBySku( $product_sku )."###";        
                $tagRelationModel = Mage::getModel('tag/tag_relation');
                /*$tagRelationModel->loadByTagCustomer($product -> getIdBySku( $importData['sku'] ), $tagModel->getId(), '13194', Mage::app()->getStore()->getId());*/
                
                $tagRelationModel->setTagId($tagModel->getId())
                        //->setCustomerId(trim($commadelimiteddata[0]))
                        ->setProductId($product -> getIdBySku( $product_sku ))
                        ->setStoreId($importData['store'])
                        ->setCreatedAt( now() )
                        ->setActive(1)
                        ->save();
            
                }
                catch ( Exception $e ) {
                }    
                    
            }

            $tagModel->aggregate();
        }


       
        return true;
    }

 

学习magento是个体力活,呵呵!

都弄好后,run。。。。

0 Comments | Posted in Magento开发 By terry water

新淘宝客申请AppKey详细图文教程(摘)

2012年2月9日星期四 Asia/Shanghai下午10:42:17

 

链接地址:http://www.xue5.com/Admin/200912/386983.html
 2010-04-02 18:27:31)转载标签:淘宝客key申请教程图文杂谈 分类:淘宝客知识

1、用你的淘宝账户登录http://my.open.taobao.com/app/create_app.htm,创建新应用即可获取AppKey和AppSecret。参考下图填写资料。



2、



3、提交后就拥有了Key和Secret,但是还不能正常使用,必须继续往下进行(此时没有做过淘宝实名认证的必须登录淘宝官网-账户管理-身份认证,进行实名认证)。




4、




5、看见【申请上线】按钮后,就不要再继续点击了。

此时就可以给TopAPI程序配置参数,参数包括淘宝Pid,Key,Secret,昵称(昵称可以去申请key页面的右上角查看,一般是你的淘宝用户名,比如下图中右上角的changke18就是我的昵称)。配置完毕后,测试你的网站是否能正常调出数据,包括list.php页面search.php页面view.php页面的数据是否正常,如果能正常调出商品数据,那么才可以点击【申请发布】按钮,注意发布后的小二审核阶段是无法正常调出数据的,只有审核通过后才能恢复正常调出数据。
0 Comments | Posted in Magento开发 By terry water
 
  • Mygod Technologies
  • 麦神科技有限公司
  • 香港中路8号
  • 中铁青岛中心大厦A3001
  • 市南区, 青岛, 266000
  • 电话: 0532-5897-3093

订阅我们的最新消息。

我们将严格尊重您的隐私。

关注我们的微信
获取外贸电子商务最新资讯;跨境推广最新策略;电子商务网站技术最新趋势。

2018 Mygod Technologies. 保留所有权. Privacy Policy