Tôi đang sử dụng phiên bản Magento 2 beta-1.0.0 và đang cố gắng tạo một mô-đun tùy chỉnh mới đơn giản. Mô-đun tùy chỉnh hoạt động nhưng đang hiển thị một trang trống trên nội dung cơ thể.
Các mô-đun được thực hiện theo cách dưới đây.
Cấu trúc thư mục: Xin chào
-app
-code
-Magento
-Hello
-Block
--Hello.php
-Controller
-Index
--Index.php
-etc
--module.xml
-frontend
--routes.xml
-view
-frontend
-layout
--hello_index_index.xml
-templates
--hello.phtml
Các tập tin như sau.
(1) ứng dụng / mã / Magento / Hello / etc / module.xml
<?xml version="1.0" ?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd">
<module name="Magento_Hello" setup_version="0.0.1"/>
</config>
(2) ứng dụng / mã / Magento / Hello / etc / frontend / Rout.xml
<?xml version="1.0" ?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../lib/internal/Magento/Framework/App/etc/routes.xsd">
<router id="standard">
<route id="hello" frontName="hello">
<module name="Magento_Hello"/>
</route>
</router>
</config>
(3) ứng dụng / mã / Magento / Hello / Trình điều khiển / Index / Index.php
class Index extends \Magento\Framework\App\Action\Action
{
protected $resultPageFactory;
public function __construct(
\Magento\Framework\App\Action\Context $context,
\Magento\Framework\View\Result\PageFactory $resultPageFactory
)
{
parent::__construct($context);
$this->resultPageFactory = $resultPageFactory;
}
public function execute()
{
return $this->resultPageFactory->create();
}
}
(4) ứng dụng / mã / Magento / Hello / Block / Hello.php
<?php
namespace Magento\Hello\Block;
class Hello extends \Magento\Framework\View\Element\Template
{
public function _prepareLayout()
{
return parent::_prepareLayout();
}
}
(5) ứng dụng / mã / Magento / Hello / view / frontend / layout / hello_index_index.xml
<?xml version="1.0" ?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../lib/internal/Magento/Framework/View/Layout/etc/page_configuration.xsd">
<head>
<title>Hello to Magento 2.0</title>
</head>
<body>
<referenceContainer name="content">
<block class="Magento\Hello\Block\Hello" name="hello" template="hello.phtml" />
</referenceContainer>
</body>
</page>
(6) ứng dụng / mã / Magento / Hello / view / frontend / samples / hello.phtml
<?php echo "This is simple hello module on Magento 2.0"; ?>
Khi mô-đun được tạo, tôi cũng đã cập nhật cài đặt Magento.
cd [magento2_root_folder_path]
Thiết lập php bin / magento: nâng cấp
Và nếu tôi đi đến
http: // localhost / magento2 / hello / index / index nó hiển thị trống dưới thẻ "body". Tôi chắc chắn mô-đun đang tải đúng cách vì thẻ "head" xuất hiện cùng với Tiêu đề.
Bất cứ sự giúp đỡ nào cũng được đánh giá cao.
layout="2columns-left"
vào page
nút trong hello_index_index.xml
tệp