Magento 2.4 页面损坏的布局

Posted

技术标签:

【中文标题】Magento 2.4 页面损坏的布局【英文标题】:Magento 2.4 page broken layout 【发布时间】:2021-12-30 15:31:42 【问题描述】:

我在 Magento 2.4.x 中遇到页面布局问题

现在我已经在一个测试模块中创建了一个测试页面。

按照所有必要的步骤在页面上使用默认主题显示一些文本。我看到了输出,但页面布局损坏。

我想知道我在这个过程中做错了什么。

请指教。

模块文件如下

路线:Tadawi\Helloworld5\etc\frontend\routes.xml

<?xml version="1.0" encoding="UTF-8"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/etc/routes.xsd">
    <router id="standard">
        <route id="helloworldroute" frontName="helloworld">
            <module name="Tadawi_Helloworld5"/>
        </route>
    </router>
</config>

控制器:Tadawi\Helloworld5\Controller\Index\Index.php

<?php
namespace Tadawi\Helloworld5\Controller\Index;

use Magento\Framework\Controller\ResultFactory;

class Index extends \Magento\Framework\App\Action\Action


    /** @var \Magento\Framework\View\Result\PageFactory  */
    protected $resultPageFactory;

    public function __construct(
        \Magento\Framework\App\Action\Context $context,
        \Magento\Framework\View\Result\PageFactory $resultPageFactory
    ) 
        $this->resultPageFactory = $resultPageFactory;
        parent::__construct($context);
    
    
    public function execute()
    
        $resultPage =$this->resultPageFactory->create();              
        return $resultPage;
    

布局文件:Tadawi\Helloworld5\view\frontend\layout\helloworldroute_index_index.xml

<?xml version="1.0"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" layout="2columns-left" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
    <referenceContainer name="content">
        <block class="Tadawi\Helloworld5\Block\Index" name="helloworld.index" template="Tadawi_Helloworld5::index.phtml" />
    </referenceContainer>
</page>

模板文件:Tadawi\Helloworld5\view\frontend\templates\index.phtml

<h2>Hello World</h2>

<p>Hello and welcome!</p>

这是我调用路由时得到的输出

【问题讨论】:

【参考方案1】:

您还需要添加您在此提到的此文件块文件。

或者您可以简单地添加 '\Magento\Framework\View\Element\Template' 而不是类

也尝试运行下面的命令,然后检查

php bin/magento se:up php bin/magento s:d:c php bin/magento s:s:d -f php bin/magento c:f

这可能会帮助您解决问题。

【讨论】:

以上是关于Magento 2.4 页面损坏的布局的主要内容,如果未能解决你的问题,请参考以下文章

xml magento 1中的自定义CMS页面布局

Magento 我的帐户布局 XML 问题

Magento访问配置存储

Magento 2 - 如何在另一个 phtml 文件、xml 布局、静态块和 cms 页面中调用自定义 phtml 文件?

Magento - PayPal IPN 配置

任何使用像Magento这样的布局和块系统的PHP框架? [关闭]