Я пишу модуль для magento1.9. Помогите пожалуйста выставить атрибуты для
app/design/frontend/rwd/default/layout/kalinin_form.xml:
<?xml version="1.0" ?> <layout> <kalininform_index_index> <reference name="content"> <block type="kalininform/form" template="Kalinin_Form/index.phtml" /> </reference> </kalininform_index_index> </layout>
Как видите, сейчас у меня атрибут type(а может быть и другие) установлен неверно.
Проблема в том, что браузер показывает страницу с пустой областью контента по адресу localhost/magento3/index.php/form
Привожу остальной код модуля.
app/design/frontend/rwd/default/template/Kalinin_Form/index.phtml:
<?php echo('qqqqqqqqqqqqq');
app/code/local/Kalinin/Form/controllers/IndexController.php:
<?php class Kalinin_Form_IndexController extends Mage_Core_Controller_Front_Action { public function indexAction() { $this->loadLayout(); $this->renderLayout(); } }
app/code/local/Kalinin/Form/Block/Form.php:
<?php class Kalinin_Form_Block_Form extends Mage_Core_Block_Template { public function getNewsCollection() { Mage::log("Your Log Message"); return true; } }
app/code/local/Kalinin/Form/etc/config.xml:
<?xml version="1.0" ?> <config> <modules> <Kalinin_Form> <version>0.0.1</version> </Kalinin_Form> </modules> <frontend> <layout> <updates> <kalininform> <file>kalinin_form.xml</file> </kalininform> </updates> </layout> <routers> <kalininform> <use>standard</use> <args> <module>Kalinin_Form</module> <frontName>form</frontName> </args> </kalininform> </routers> </frontend> <global> <blocks> <Kalinin_Form> <class>Kalinin_Form_Block</class> </Kalinin_Form> </blocks> </global> </config>
Вообще у меня проблема с пониманием атрубутов в app/design/frontend/rwd/default/layout/kalinin_form.xml. Официальной документации нет. Буду благодарен, если объясните что к чему.
Solved! Go to Solution.
Поменяйте секцию blocks в config.xml на
<blocks> <kalininform> <class>Kalinin_Form_Block</class> </kalininform> </blocks>
в config.xml в секциях blocks, helpers, models вы указываете alias - короткое имя для обращения к блокам, моделям и хелперам.
В вашем случае с учетом моего исправления это kalininform. То есть type="kalininform/block_path..."
либо можно оставить ваш конфиг, но тогда придется поменять в layout - type="Kalinin_Form/..."
Поменяйте секцию blocks в config.xml на
<blocks> <kalininform> <class>Kalinin_Form_Block</class> </kalininform> </blocks>
в config.xml в секциях blocks, helpers, models вы указываете alias - короткое имя для обращения к блокам, моделям и хелперам.
В вашем случае с учетом моего исправления это kalininform. То есть type="kalininform/block_path..."
либо можно оставить ваш конфиг, но тогда придется поменять в layout - type="Kalinin_Form/..."