`
天梯梦
  • 浏览: 13763739 次
  • 性别: Icon_minigender_2
  • 来自: 洛杉矶
社区版块
存档分类
最新评论

magento URL分析,查找修改相应文件

 
阅读更多

通过 http://localhost/magento/index.php /customer/account/create/ 分析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。然后寻找名字为<customer_account_create>的标签,Xml代码:

<customer_account_create> 
    <!– Mage_Customer –> 
    <remove name=”right”/> 
    <remove name=”left”/> 
    <reference name=”root”> 
        <action method=”setTemplate”> 
            <template>/page/1column.phtml</template> 
        </action> 
    </reference> 
    <reference name=”content”> 
        <block type=”customer/form_register” name=”customer_form_register” template=”customer/form/register.phtml”/> 
    </reference> 
</customer_account_create> 
 

<reference name=”root”> 用来说明你要使用的布局文件。

<reference name=”content”>下的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

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

<?php echo $this->getHello(); ?>
  

3. 修改customer.xml配置将Xml代码  

<block type="customer/form_register" name="customer_form_register" template="customer/form/register.phtml"/>  
  

修改为Xml代码  

<block type="customer/form_register1" name="customer_form_register1" template="customer/form/register1.phtml"/>  
  

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

 

 

 

转载:http://www.beijibear.com/index.php?aid=546

分享到:
评论

相关推荐

    Magento-Url隐藏默认语言的code.1.9.2.4测试通过.zip

    在Magento 1.9.2.4版本中,这个方法位于`app/code/core/Mage/Core/Model/Url.php`文件内。在这个方法中,添加逻辑来检查当前请求的URL是否包含语言代码。如果没有,我们可以手动设置默认商店代码,这样系统会自动跳...

    Magento Category Filter Url静态化插件

    插件需要设置自定义控制器和动作来处理这些静态URL,根据URL路径中的参数来执行相应的筛选查询。 3. **模板和皮肤**:文件夹`skin`可能包含了插件的CSS和JavaScript文件,用于与前端界面交互,确保筛选按钮和链接以...

    magento2.4在windows下运行补丁文件.zip

    对于文件替换补丁,例如压缩包中的“magento2.4覆盖文件”,你需要逐个将这些文件复制到你的Magento根目录相应的位置,覆盖原有的文件。务必谨慎操作,确保你了解每个文件的作用。 6. **运行命令行工具**:Magento ...

    magento数据结构分析

    标题:“Magento数据结构分析” 描述:“Magento数据字典”提供了对Magento系统中各种数据库表的深入理解,这对于理解和优化Magento的性能至关重要。 一、Magento数据结构解析 Magento是一款功能强大的电子商务...

    magento商城数据库

    本文件是 Magento 数据库的建库文件,用于快速构建和初始化 Magento 系统所需的完整数据库结构。 SQL 文件是数据库结构和数据的脚本表示,通常包含创建表、索引、视图、触发器和存储过程等数据库对象的指令。在这个...

    magento结构和原理

    magento采用单入口文件模式,根据不同参数调用相应的模块。例如,http://127.0.0.1/index.php/customer/account/login地址将经过以下步骤: 1. 首先接收customer参数,根据该参数查找到app/code/core/mage/customer...

    Magento深入理解Magento

    例如,检查URL中的`showConfig`参数是否存在,如果存在,则执行相应的操作。 #### 四、深入理解配置文件 - **`config.xml`**:此文件主要用于声明模块及其版本号。它还可以包含其他配置信息,如依赖关系等。 - **`...

    magento username 修改涉及文件

    NULL 博文链接:https://baisoo.iteye.com/blog/1225264

    magento文件

    magento的二次开发文档 方便 快捷 省事 绝版推出哟

    redis magento

    解压后,应仔细查看其中的文档或修改过的配置文件,以理解如何应用这些更改。同时,"redisԭʼmagento-1.zip" 很可能是针对将 Redis 集成到 Magento 作为 session 存储的实现或优化的资源包。同样,解压并分析其中的...

    magento转移服务器magento建立多站点总结

    - 将线上Magento商店的文件打包下载到本地,然后解压缩到本地服务器的相应目录。 - 修改`app/etc/local.xml`文件,更新数据库连接信息以匹配本地环境。 3. **解决迁移后的问题** - 更新核心配置数据:在数据库中...

    magento订单号的修改

    本文将深入探讨如何在Magento中实现订单号的自由修改,特别是通过自定义代码来改变订单号的生成逻辑,以满足特定的业务需求。 ### Magento订单号修改的核心逻辑 在Magento系统中,订单号的生成通常遵循一定的规则...

    深入学习Magento必读

    在Magento中,模板文件位于app/design目录下,它们根据控制器的指令呈现相应的界面。视图层的主要任务是将模型层的数据以用户友好的方式展现出来。 **Controller(控制器)**:控制器作为MVC架构的入口,接收用户...

    Magento插件开发手册 Magento Extension Developers Guide

    2. **创建代码结构**:根据Magento的模块结构创建必要的目录和文件。 3. **配置文件设置**:编写配置文件,定义模块的元数据,如名称、版本和依赖关系。 4. **数据库准备**:如果插件需要数据库支持,需创建相应的...

    Magento Extension Developers Guide 1.0

    **设计**:Magento采用了灵活的设计体系,允许开发者轻松更改主题和布局而无需修改核心代码。这使得网站能够快速适应各种视觉风格的需求。 **主题**:Magento支持多个主题,每个主题都包含了一系列的设计元素,如...

    magento2-urlrewriteimporter:一个简单的Magento模块,将允许您使用CSV文件将自定义URL重写导入到管理员

    Turiknox URL重写导入器概述一个简单的Magento模块,将允许您使用CSV文件将自定义URL重写导入管理员。要求Magento 2.1.x安装n 将模块的内容复制到您的Magento根目录中。 通过命令行启用模块: / path / to / ...

    magento搜索url---伪静态插件

    适应于 magento1.9.x ================================== 分类的网址达到短路径: http://local.router-switch.com/Price-cisco-router-cisco-router-1900-series_c11 普通搜索 ... 高级搜索 ...对路径都做到短路径,对...

    Magento1自定义登录重定向

    在Magento 1中,这通常涉及到修改或扩展核心代码,或者安装第三方模块。描述中提到的"禁止用作商业用途"可能是指这是一个免费的社区插件,不适用于商业环境,因此可能缺乏官方支持和更新。 在提供的文件列表中,`...

    Magento php开发指南

    5. 主题和样式定制:指导开发者如何通过修改或创建新的主题来定制网站的外观和布局,包括CSS样式、模板文件和布局XML等。 6. 高级功能实现:提供对高级功能实现的指导,如如何集成第三方服务、创建自定义报告、添加...

Global site tag (gtag.js) - Google Analytics