Magento 2:检查当前URL是否为主页

本文介绍了如何在Magento 2中检查当前页面URL是否为主页URL。

以下是我的自定义模块(Chapagain_HelloWorld)的块类。我已经将Logo块类的对象注入到模块的块类的构造函数中。

app / code / Chapagain / HelloWorld / Block / HelloWorld.php

<?php
namespace Chapagain\HelloWorld\Block;
class HelloWorld extends \Magento\Framework\View\Element\Template
{
    protected $_logo;    
    
    public function __construct(
        \Magento\Backend\Block\Template\Context $context,
        \Magento\Theme\Block\Html\Header\Logo $logo,
        array $data = []
    )
    {        
        $this->_logo = $logo;
        parent::__construct($context, $data);
    }
    
    /**
     * Check if current url is url for home page
     *
     * @return bool
     */
    public function isHomePage()
    {    
        return $this->_logo->isHomePage();
    }
}
?>

请参阅vendor / magento / module-theme / Block / Html / Header / Logo.php中的更多功能。

现在,我们可以在模板(.phtml)文件中使用can函数。

if ($block->isHomePage()) {
    // do something
}

您可以在网站的index.php文件底部编写以下代码,并在首页或其他任何页面中都可以在页面底部看到输出:

$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$helloWorldBlock = $objectManager->get('Chapagain\HelloWorld\Block\HelloWorld');
var_dump($helloWorldBlock->isHomePage());

希望这可以帮助。谢谢。

相关文章

0 0 投票数
文章评分
订阅评论
提醒
0 评论
内联反馈
查看所有评论