- 浏览: 2040294 次
- 来自: 武汉
-
文章分类
- 全部博客 (415)
- UI设计 (19)
- PHP (26)
- PHP工具类 (23)
- 二次开发 (53)
- phpMVC (28)
- javascript (50)
- JS 组件 (20)
- MYSQL (37)
- 其他 (16)
- xml/flash/flex (6)
- 版本控制 (7)
- 开源 (4)
- bug解决 (5)
- Linux (15)
- NoSQL (14)
- 软件设计 (21)
- C/PHP内核 (5)
- 安全性 (8)
- 面试 (18)
- 设计模式 (4)
- 重构 (6)
- 开发配置 (11)
- SQL SERVER (12)
- 采集 (3)
- SEO (2)
- 维护 (15)
- UML (5)
- 硬件标准 (1)
- 架构 (8)
- JAVA (1)
最新评论
-
carry0987:
求大神分離下X3的模板...不然對於PHP7不友好啊...
分离自Discuz模板类和语法 -
青木得海角:
你好,里面的 Crypt/TripleDES.php 和 Cr ...
POS机算法 -
zohog:
楼主,Mac.php中里面的 Crypt/TripleDES. ...
POS机算法 -
zohog:
楼主,Mac.php中里面的 Crypt/TripleDES. ...
POS机算法 -
q59200182:
能不能给个完整的demo 新手上路不会 求带
AngularJs 指令directive之controller,link,compile
1.首先启用block配置
/* 模板.phtml文件中使用的方法在此文件中声明,此案例中此文件将计算结果传递到.phtml文件 */
app/code/local/Hellokey/Counter/Block/Counter.php
/* 主要的插件配置文件 */
app/code/local/Hellokey/Counter/etc/config.xml
<blocks> <hellokey> <class>Hellokey_Counter_Block</class> </hellokey> </blocks> </global>
会加载下面所有的block文件。注意大小写标签
/* 前台显示模板的layout */
app/design/frontend/default/default/layout/counter.xml Block/Counter.php启用配置
<block type="Hellokey/counter" name="counter" template="customer/index.phtml"/>
有时候会出现一种情况,一个block只需要模板文件而不需要php文件,比如只是需要加一个flash,最多有些简单的php代码,但一个block,type是不可缺少的,那怎么办呢。其实Magento已经给我们提供了一种通用方案,当不需要特别指定type时,可以用core/template 代替,系统自带的模板里就有这种用法
2.我们就在counter/index/index这个path下的indexAction中接收这个参数
app/code/local/Hellokeykey/Counter/controllers/IndexController.php文件中代码片段
public function indexAction() { if ($this->getRequest()->isPost()){ /* 首先判断是否有post发生 */ $nu1 = $this->getRequest()->getParam('NUM1'); /* 截获参数 */ $nu2 = $this->getRequest()->getParam('NUM2'); Mage::register('nu1', $nu1);/* 传递到block */ Mage::register('nu2', $nu2); } $this->loadLayout(); $this->renderLayout(); }
既然在controllers中有了传递到block的方法,下一步就在block中获取
app/code/local/Hellokeykey/Counter/Block/Counter.php文件中代码片段
protected $nu1 = null ; protected $nu2 = null; public function showresult(){ $this->nu1 = Mage::registry('nu1'); /* 获得从controllers中传递来的参数 */ $this->nu2 = Mage::registry('nu2'); return $this->nu1 * $this->nu2; } protected function _prepareCollection() { $roleId = $this->getRequest()->getParam('rid'); Mage::register('RID', $roleId); $collection = Mage::getModel('api/roles')->getUsersCollection(); $this->setCollection($collection); return parent::_prepareCollection(); } protected function _toHtml() //相当于block xml 中的temple="..detail.phtml" { $this->setTemplate("virtualcurrency/customer/accounts/detail.phtml"); $html = parent::_toHtml(); return $html; }
此block文件中的showresult()方法在phtml文件中可以试用$this->直接调用。
这样我们就差最后一步就是在我们的模板文件中输出结果了在app/design/frontend/default/default/template/customer/index.phtml文件中添加输出结果的代码
<ul> <li>result:<?php echo $this->showresult(); ?></li> </ul>
发表评论
-
phpcms v9网站搬家更换域名的方法
2016-06-17 09:39 1525网站在发展的过程中,很可能多次的修改域名。那么在PHPCM ... -
phpcms SEO
2016-06-15 16:33 1352大家应该都是在header头文件里写上{if isset( ... -
Magento 自定义Url
2013-12-12 22:21 1352查看Url重写列表,在后台的Catalog > URL ... -
magento 如何安装模板主题
2013-11-07 23:26 2126注意区分“主题包”和“主题文件”这两个概念。我们所使用的主 ... -
MAGENTO调试时候,关闭缓存
2013-11-07 22:43 3656在调试MAGENTO的时候,我们其实不需要为了每一个小的的 ... -
Magento 返回不带Layout的页面输出
2013-08-06 13:58 8772. 在controller的代码方式创建并输出block ... -
magento 添加 删除css js
2013-06-03 20:41 2560在addJs、addCss的代码一般在page/html_ ... -
Magento Shell
2013-04-16 15:32 1497在magento/shell/下Virtualcard.p ... -
Magento 开启模板路径提示
2013-01-30 17:22 2295Magento 中, 任何一个页面中的 html 代码都来 ... -
Magento 中的事件
2013-01-06 14:19 1340magento的事件机制就跟dural的hook机制一样,为了 ... -
Magento Adminhtml Form
2012-11-29 17:37 1595开发Magento后台的时候经常用到表单(Varien_D ... -
Magento 添加后台管理 addColumn
2012-11-16 17:07 1999复选框 $row->getData($this-& ... -
Magento 覆写
2012-10-16 13:37 1544magento的覆写很重要,在项目开发过程中经常需要修改核心的 ... -
Magento 自动添加属性 自动添加表
2012-09-03 13:43 19871自动添加属性字段 config.xml <r ... -
Magento 临时替代默认店铺
2012-08-22 10:10 1466多店铺主题切换http://hudeyong926.ite ... -
Magento API v2 之webservice
2012-07-31 17:36 1855http://yourserver.com/api/v2_so ... -
Magento 添加后台管理
2012-07-27 11:13 4382后台菜单显示点击后404,如果adminhtml.xml配 ... -
Magento 如何调用static block
2012-04-19 15:53 1759若想在站点页面的某个地方放点静态的内容,比如广告,或者是促 ... -
Magento 数据库EVA
2012-03-14 16:30 2999实体,属性和值(EVA)数据库架构排在第一,非常难以把握。E ... -
Magento API v1 之webservice
2012-03-09 12:18 3113sales/etc/api.xml <?xml ver ...
相关推荐
在Magento的架构中,Block(块)是核心组件之一,它在视图层(View Layer)中扮演着重要角色,负责处理数据并渲染到页面上。了解Magento中Block的应用对于开发高质量的Magento店铺至关重要。 1. **Block类的定义** ...
Block items can include any content that Magento CMS can involve Powerful block view scheduler Per-category and per-store view aheadWorks Market Segmentation Suite extension integration Enabling/...
app/code/local/App/Configviewer/Block app/code/local/App/Configviewer/controllers app/code/local/App/Configviewer/etc app/code/local/App/Configviewer/Helper app/code/local/App/Configviewer/Model ...
Magento的模板文件调用是通过Block对象实现的。Block对象是页面构建的基本单元,它们负责渲染HTML和执行业务逻辑。例如,`header` Block在`page.xml`布局文件中被定义,然后在页面模板文件(如`1column.phtml`)中...
在电子商务领域,Magento是一款非常流行的开源电子商务平台,它提供了丰富的功能和高度的可定制性,使得开发者能够构建出满足各种需求的在线商店。在Magento中,CMS(Content Management System)静态块是其核心功能...
3. **布局、块和模板**:讲解了 Magento 的页面布局机制,包括布局更新 XML 文件、Block 类和模板文件的使用。 4. **模型和 ORM 基础**:介绍了 Magento 如何使用 Entity-Attribute-Value (EAV) 模型存储数据,并...
此外,还有Controller、Model、Block、Helper等子目录,它们分别对应了MVC(模型-视图-控制器)架构的不同部分。修改这里的代码可以深度定制Magento的功能。 "skin"目录则包含了所有前端展示相关的静态资源,如CSS...
这通常涉及到对Magento的MVC(Model-View-Controller)架构的理解,以及对数据模型、块(Block)、模板(Template)和控制器(Controller)的运用。 首先,我们需要理解在Magento后台添加列的过程。这通常涉及到...
Magento 模块开发教程 Magento 的配置系统是 Magento 的核心,负责管理 Magento 的运行。配置系统掌管着几乎所有的模块、模型、类、模板等等。它将整个 Magento 系统抽象出来,用一个配置文件来描述。这个配置文件...
- **Block(块)**:块是视图层的一部分,它充当了模型和视图之间的中间层,处理复杂的逻辑和数据处理,可以看作是可重用的视图组件。块可以包含其他块,形成层次结构,使得布局更灵活。 - **Layout(布局)**:布局...
#### 三、Magento的布局(Layout)、块(Block)和模板(Template) **3.1 什么是Block** Block是Magento中的一种特殊类,用于处理页面布局的某一部分。Block可以包含逻辑处理代码,也可以包含HTML输出代码。Block...
Block 使用 Helpers,这一步骤中,Blocks 使用 Helpers 来处理一些特定的功能,Helpers 是 Magento 的一个组件,负责处理一些辅助功能。 步骤 14:Helpers 使用 Object Models 资源 Helpers 使用 Object Models ...
在Magento中,插件主要分为两种类型:模型(Model)、资源模型(Resource Model)、集合(Collection)、助手(Helper)、控制器(Controller)、块(Block)和视图(View)。这些组件协同工作,以实现特定功能。在...
View层则包含了多种视图元素,如PHTML模板、Block类和布局XML。了解这些差异有助于你在实际开发中做出更合适的选择。 最后,我们将深入“magneto的高级资源模型”。在Magento中,资源模型是连接数据库的主要方式,...
3. **Block**: 这是视图层的业务逻辑,可能会添加新的Block类或修改现有Block来显示商品图片。 4. **View**: 包含模板文件,这里可能需要修改订单详情页面的HTML模板,以便在适当的位置插入图片。 5. **Helper** ...
例如,创建一个新的前台Block来显示更复杂的倒计时效果,或添加新的管理界面以便更方便地配置抢购活动。 5. **数据库交互**:"package.xml"是Magento模块的配置文件,它定义了模块的依赖、安装脚本和布局更新等信息...
1. 创建目录结构:例如,`app/code/local/Alanstormdotcom/Configviewer/Block`、`controllers`、`etc`、`Helper`、`Model`和`sql`。 2. 创建两个关键文件: - `app/code/local/Alanstormdotcom/Configviewer/etc/...
**准备输出**:定义视图层的展示逻辑,包括布局文件、块(Block)文件等,确保用户界面符合设计要求。 **准备帮助程序**:编写帮助程序类来封装一些常用的业务逻辑或功能,如格式化日期、生成链接等。 **添加示例...
### Magento-中文开发教程(技术重点2) #### Magento 强大的配置系统 Magento 的配置系统是其核心之一,它管理着几乎所有 "module/model/class/template/etc"。这套配置系统将整个 Magento 系统抽象化,使用一段 ...