Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1293301
  • 博文数量: 315
  • 博客积分: 10397
  • 博客等级: 上将
  • 技术积分: 3731
  • 用 户 组: 普通用户
  • 注册时间: 2007-03-07 21:21
文章分类

全部博文(315)

文章存档

2015年(10)

2014年(3)

2013年(2)

2012年(8)

2011年(8)

2010年(29)

2009年(59)

2008年(77)

2007年(119)

分类: 系统运维

2009-11-05 12:40:35

如果你在本机的虚拟目录magento下建立了Magento那么访问:
引用
http://localhost/magento/index.php/customer/account/create/
将进入用户注册界面。

下面就从URL尝试分析Magento调用该页面的过程
1. URL中的customer表明当前访问的模块是customer,自动定位到:app\code\core\Mage\Customer
2. URL中的account表明当前访问的控制器文件为AccountController.php
app\code\core\Mage\Customer\controllers\AccountController.php
3.URL中的create表明当前访问的php方法是createAction(),该方法在文件
app\code\core\Mage\Customer\controllers\AccountController.php
4. createAction()装载目录\app\design\frontend\default\default\layout\下名字和模块名相同的layout文件,名字为customer.xml。然后寻找名字为的标签,

Xml代码







用来说明你要使用的布局文件。这个顺带提起,不是本文讨论的范畴。
下的block就是你定义的block
上面的block是默认定义,block类文件可以由customer/form_register推测出来:
app\code\core\Mage\Customer\Block\Form\Register.php
template属性推导出相应的模板文件为
app\design\frontend\default\default\template\customer\form\register.phtml
template之于block犹如jsp之于javabean. 通过这样的配置block和template就联系起来了。可以在template文件中使用$this来访问block类的方法。
下面我们实现一个新的block应用
1. 定义一个新的block文件: app\code\core\Mage\Customer\Block\Form\Register1.php rjz

Java代码

class Mage_Customer_Block_Form_Register1 extends Mage_Directory_Block_Data{
public function getHello(){
return “Hello Block”;
}
}
class Mage_Customer_Block_Form_Register1 extends Mage_Directory_Block_Data{ public function getHello(){ return “Hello Block”; }}
2. 定义template文件:app\design\frontend\default\default\template\customer\form\register1.phtml Html代码

getHello(); ?>
getHello(); ?>
3. 修改customer.xml配置 Xml代码



Xml代码


重新访问该url,不出意外你应该可以看到下面的结果

阅读(2480) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~