Как выполнить функцию блокировки на домашней странице?


Это мой файл макета.

<?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="Vendor\Namespace\Block\Index\Custom" template="Vendor_Namespace::cms.phtml"/>
        </referenceContainer>
    </body>
</page>

Это мой файл блока:

 <?php
    namespace Vendor\Module\Block\Index;

    class Custom extends \Magento\Framework\View\Element\Template
    {
        public function Newly(){
       return "hello";
    }
    }

Файл Phtml

<?php echo Newly();
?>

Но никаких изменений на домашней странице

Author: Ramesh KR, 2018-01-11

1 answers

Вы можете выполнить свою задачу следующим образом:

Откройте страницу cms из Администратор->Содержимое->Домашняя страница

Теперь вызовите свой phtml с пользовательским блоком на странице cms

{{block class="Vendor\Namespace\Block\Index\Custom" template="Vendor_Namespace::cms.phtml"}}

Vendor\Namespace\Block\Index\Custom.php

<?php

namespace Vendor\Module\Block\Index;

class Custom extends \Magento\Framework\View\Element\Template
{
    public function Newly()
    {
       return "hello";
    }
}

Поставщик\Пространство имен\представление\интерфейс\шаблоны\cms.phtml

<?php echo Newly(); ?>

Очистить кэш с помощью php bin/magento cache:flush

 1
Author: Prince Patel, 2018-01-11 08:33:19