[英]Layout not display on frontend Module magento
magento模塊中的前端未加載布局存在一些問題。
config.xml
<?xml version="1.0" encoding="UTF-8"?>
<config>
<modules>
<Way_SaleWithus>
<version>1.0.0</version>
</Way_SaleWithus>
</modules>
<frontend>
<routers>
<SaleWithus>
<use>standard</use>
<args>
<module>Way_SaleWithus</module>
<frontName>SaleWithus</frontName>
</args>
</SaleWithus>
</routers>
<layout>
<updates>
<SaleWithus>
<file>SaleWithus.xml</file>
</SaleWithus>
</updates>
</layout>
</frontend>
</config>
SaleWithus.xml
位置:app / design / frontend / base / default / layout / SaleWithus.xml
<?xml version="1.0" encoding="UTF-8"?>
<layout version="0.1.0">
<SaleWithus_index_index>
<reference name="content">
<block type="core/template" name="SaleWithus" template="SaleWithus/SaleWithus.phtml" />
</reference>
</SaleWithus_index_index>
</layout>
SaleWithus.phtml位置app / design / frontend / base / default / template / SaleWithus / SaleWithus.phtml
<div>
<h4>Hello World!!</h4>
</div>
IndexController.php
<?php
class Way_SaleWithus_IndexController extends Mage_Core_Controller_Front_Action
{
public function indexAction()
{
// if ($this->_getSession()->isLoggedIn()) {
// $this->_redirect('*/*/');
// return;
// }
// $this->getResponse()->setHeader('Login-Required', 'true');
// $this->loadLayout();
// $this->_initLayoutMessages('customer/session');
// $this->_initLayoutMessages('catalog/session');
// $this->renderLayout();
$this->loadLayout();
$this->renderLayout();
echo "subhash";
}
protected function _getSession()
{
return Mage::getSingleton('customer/session');
}
}
?>
代碼哪里出問題了?
您的xml有一些主要問題,應該如下所示。
<?xml version="1.0"?>
<config>
<modules>
<Way_SaleWithus>
<version>0.1.0</version>
</Way_SaleWithus>
</modules>
<frontend>
<routers>
<salewithus>
<use>standard</use>
<args>
<module>Way_SaleWithus</module>
<frontName>salewithus</frontName>
</args>
</salewithus>
</routers>
<layout>
<updates>
<salewithus>
<file>salewithus.xml</file>
</salewithus>
</updates>
</layout>
</frontend>>
</config>
在Magento中,除了類名之外,最好將所有內容都設置成小寫字母。 函數名稱也必須僅使用駝峰大寫字母。
上面的config.xml包含了所有英語字母的情況。 問題來了。 如果一切順利,則layout.xml必須如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<layout version="0.1.0">
<salewithus_index_index>
<reference name="content">
<block type="core/template" name="salewithus" template="SaleWithus/salesithus.phtml" />
</reference>
</salewithus_index_index>
</layout>
Config.xml必須如下所示:
<?xml version="1.0"?>
<config>
<modules>
<Way_SaleWithus>
<version>0.1.0</version>
</Way_SaleWithus>
</modules>
<frontend>
<routers>
<salewithus>
<use>standard</use>
<args>
<module>Way_SaleWithus</module>
<frontName>salewithus</frontName>
</args>
</salewithus>
</routers>
<layout>
<updates>
<salewithus>
<file>salewithus.xml</file>
</salewithus>
</updates>
</layout>
</frontend>>
</config>
在以下路徑中更改您的模板文件名: app/design/frontend/base/default/template/SaleWithus/salewithus.phtml
Layout.xml如下路徑:Location: app/design/frontend/base/default/layout/salewithus.xml
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.