根据分类属性来获取目录

2010-09-03 15:06:06.0

magento中获取分类还是比较简单的

1.根据分类的ID来获取

Mage::getModel('catalog/category')->load('分类ID')

2.根据分类的属性来获取分类

Mage::getModel('catalog/category')->loadByAttribute('name','栏目名');

我们看下方法名就知道了可以用任何属性来查找当前分类..

主流JS框架中DOMReady事件的实现

2010-08-31 08:58:03.0

在实际应用中,我们经常会遇到这样的场景,当页面加载完成后去做一些事情:绑定事件、DOM操作某些结点等。原来比较常用的是window的onload 事件,而该事件的实际效果是:当页面解析/DOM树建立完成,并完成了诸如图片、脚本、样式表甚至是iframe中所有资源的下载后才触发的。这对于很多 实际的应用而言有点太“迟”了,比较影响用户体验。为了解决这个问题,FF中便增加了一个DOMContentLoaded方法,与onload相比,该 方法触发的时间更早,它是在页面的DOM内容加载完成后即触发,而无需等待其他资源的加载。Webkit引擎从版本525(Webkit nightly 1/2008:525+)开始也引入了该事件,Opera中也包含该方法。到目前为止主流的IE仍然没有要添加的意思。虽然IE下没有,但总是有解决办法 的,下文对比了一下几大主流框架对于该事件的兼容性版本实现方案,涉及的框架包括:

记录下没有优惠价或者优惠价和市场价相等magento的显示方式

2010-08-30 15:14:45.0

在magento中,如果市场价和优惠价相等,就只会简单的输出价格...

太丑了!!

何况一般的客户都喜欢帮所谓的优惠价弄成N多的名堂出来

比如:暖心价,一口价,会员价,全国统一团购价,商城价等等

如果只给个简单的价格,估计客户会狂飙的,我们都知道magento显示价格都在一个phtml中

frontend/blank/template/catalog/product/price.phtml

大家进去了吧!头晕了吧!!如果你不是做外贸的单子。。其实这里面大部分的代码是没有用的。。

商城配送方式实现最优算法

2010-08-27 12:10:10.0

如果商城中有好几个快递运送方式...

 

如何能实现最优算法呢 ??先解释下所谓的最优算法...

1.只显示能配送到该地区的快递公司

2.在上面的基础上默认选中最便宜的快递公司

3.在前两条的基础上选中最快的快递公司

需求已经明确我们来看看magento中onepage中实现shipping method的地方,

一顿乱点..发现magento默认就帮我们实现了第一条需求

magento核心类Varien_Object

2010-08-26 12:32:14.0

magento所有的数据模型都继承自类“Varien_Object”。这个类属于Magento的系统类库.

你可以在这里找到这个类

lib/Varien/Object.php

Magento模型的数据保存在“_data”属性中,这个属性是“protected”修饰的。父类“Varian_Object”定义了一些函数用来取出这些数据。我们上面的例子用了“getData”,这个方法返回一个数组,数组的元素是“key/value”对。【注:其实就是数据表中一行的数据,“key”就是列名,“value”就是值】我们可以传入一个参数获取某个具体的“key”的值。

magento购物车页面加入数量总计

2010-08-25 16:36:53.0

打开magento的购物车页面,发现没有数量总计,我记得好像有的....

 

不知道是不是哪次给删除掉了...

我们找到

template/checkoout/cart/totals.phtml

发现有这样一段php代码

<?php echo $this->renderTotals('footer'); ?>

jQuery绑定事件的命名空间详解

2010-08-23 10:41:40.0

以前写过一篇

jQuery的事件绑定命名空间

说句实话,我现在回头去看下自己的这篇文章,我都看不懂,今日碰巧在网上看到一篇介绍jQuery的时间绑定命名空间的文章

jQuery

如何删除magento的订单

2010-08-22 17:27:46.0

magento中的订单默认是不能删除的,这个有好处也有坏处,不能删除订单....可以避免一些员工的误操作。。

 
 

但是在我们的开发过程中,无可避免的产生一些测试订单。。如果这些订单不删除掉的话。。实在是太影响外观了。。那么怎样删除这些无用的订单呢?magento后台中没有删除订单的功能,只看到有取消订单的功能,根本没有删除订单的选项

为新注册用户在onepage页面自动填入姓名

2010-08-21 11:53:12.0

当一个新用户注册,其默认是没有输入国收货地址,所以当新用户下订单后,在onepage页面,会要求用户输入用户名,收货地址等。。。

客户在注册的时候已经输入过用户名了,从用户体验角度出发。。我们可以在onepage页面自动为他填上用户名。。。

首先我们找到‘app/code/core/Mage/Checkout/Block/Onepage/Billing.php’

然后找到getAddress这个方法

public function getAddress() {
if ($this->isCustomerLoggedIn()) {
return $this->getQuote()->getBillingAddress();
} else {
return Mage::getModel('sales/quote_address');
}
}

magento的cms中调用首页地址,skin目录

2010-08-19 14:00:30.0

magento中的CMS管理模块不是传统意义上的CMS,我们可以理解他为动态静态块,这个词有点拗口.

通俗点讲就是有些HTML代码或者某一个代码块我们可以放入CMS的static block 中,然后再在Magento中调用CMS静态块 (Static Block)来优雅的动态显示我们需要显示的内容