我正在关注 Alan Storm 的 No_Frills_Magento_Layout。我已经到了一个点,我无法按照书上所说的去做,所以我换了一种方式
以下是书籍方式,我收到错误
$layout = Mage::getSingleton(’core/layout’);
$block = $layout->createBlock('ts_nofrills/helloworld', 'root');
echo $block->toHtml();
//Fatal error: Call to a member function createBlock() on a non-object in
下面是我的方式并产生 .phtml 文本
$main_block = new Ts_Nofrills_Block_Helloworld();
$layout = Mage::getSingleton(’core/layout’);
$block = $layout->createBlock($main_block, 'root');
echo $block->toHtml();
我的问题是,随着本书的继续,这个示例被扩展,并且通过偏离示例并按照我的方式进行操作,我觉得我没有充分发挥潜力。
我想我写错了第一个参数,以便 magento 在 createBlock 函数中识别它我在示例中做错了什么?
我一直不愿意提出这个问题,原因有两个:
1 - 我确定答案在书中(虽然我找不到)
2 - 我确定这个问题已经在这里被问过(我再一次看过但找不到它)
===编辑===
<global>
<blocks>
<Ts_Nofrills>
<class>Ts_Nofrills_Block</class>
</Ts_Nofrills>
</blocks>
....
</global>
文件结构
- TS
- 没有多余的装饰
- 堵塞
- 模板.php
- 控制器
- 索引控制器.php
- ETC
- 配置文件