Câu trả lời:
Thêm khối mới bằng cách tạo một mô-đun mới. ví dụ :
Tạo một thư mục mới trong app/code/
Trong này tạo một thư mục khác Foo/Bar
Để tạo mô-đun, hãy tạo mô-đun Foo/Bar/etc/module.xml
.
Và dán mã này
<?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="Foo_Bar" setup_version="2.0.1"/>
</config>
Chạy cái này php bin/magento setup:upgrade
trong CLI của bạn để tạo mô-đun.
Tạo nên Foo/Bar/Block/Baz.php
và dán mã này
<?php
namespace Foo\Bar\Block;
class Baz
extends \Magento\Framework\View\Element\Template
{
public function getTitle()
{
return "New Block";
}
}
tạo nên Foo/Bar/view/frontend/layout/customer_account_login.xml
và dán mã này
<?xml version="1.0"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" layout="1column" xsi:noNamespaceSchemaLocation="../../../../../../../lib/internal/Magento/Framework/View/Layout/etc/page_configuration.xsd">
<body>
<referenceContainer name="content">
<block class="Foo\Bar\Block\Baz" template="Foo_Bar::default/baz.phtml"/>
</referenceContainer>
</body>
</page>
tạo nên Foo/Bar/view/frontend/templates/default/baz.phtml
và dán mã này
<?php
?>
<h1tag><?php echo $block->getTitle(); ?></h1tag>
Xóa bộ nhớ cache và kiểm tra khối của bạn bằng cách tải lại trang đăng nhập.
Trong Bảng quản trị: đi đến nội dung> widget> Thêm Widget> sau đó
bấm vào nút tiếp tục
và chọn khối bạn muốn thêm.
Thêm nó thông qua widget, Thêm một widget mới của loại khối tĩnh CMS và trong tùy chọn widget chọn trang cụ thể của bạn.