Magento 2查看当前网址是否为主页

如何检查当前URL是否是主页URL?。您也想知道这个问题,并为您的Magento 2商店寻找完美的方式。在帖子中,您将通过使用PHP代码确认当前页面是否是主页。

检查当前网址是否为Magento 2主页的概述

  • 第1步:声明 Mageplaza_HelloWorld
  • 第2步:在模板.phtml文件中声明函数
  • 第3步:获取index.php文件输出

第1步:声明 Mageplaza_HelloWorld

您将使用模块的块类Mageplaza_HelloWorld,然后可能Logo在模块的块类的构造函数中注入类的对象。

app/code/Mageplaza/HelloWorld/Block/HelloWorld.php

<?php
namespace Mageplaza\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

第2步:在模板.phtml文件中声明函数

在模板.phtml文件中运行以下函数

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

第3步:获取index.php文件输出

要获取当前页面底部(主页或其他页面)的输出,可以在index.php文件中编写以下脚本。

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

请按照三个步骤进行操作,您可以查看当前的网址。如果您对文章或任何问题有任何疑问,请使用下面的评论部分!

相关文章

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