![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/mageworx/module-seoxtemplates/Model/Observer/ |
<?php /** * Copyright © 2016 MageWorx. All rights reserved. * See LICENSE.txt for license details. */ namespace MageWorx\SeoXTemplates\Model\Observer; use MageWorx\SeoXTemplates\Model\ResourceModel\Template\Product\CollectionFactory; use MageWorx\SeoXTemplates\Model\DynamicRenderer\Category as Renderer; /** * Observer class for product template apply process */ class CategoryNameModifier implements \Magento\Framework\Event\ObserverInterface { /** * @var \MageWorx\SeoXTemplates\Model\DynamicRenderer\Category */ protected $dynamicRenderer; /** * @var \Magento\Framework\App\Request\Http */ protected $request; /** * @var \Magento\Framework\Registry */ protected $registry; /** * CategoryDataModifier constructor. * * @param Renderer $dynamicRenderer * @param \Magento\Framework\App\Request\Http $request * @param \Magento\Framework\Registry $registry */ public function __construct( Renderer $dynamicRenderer, \Magento\Framework\App\Request\Http $request, \Magento\Framework\Registry $registry ) { $this->dynamicRenderer = $dynamicRenderer; $this->request = $request; $this->registry = $registry; } /** * Modify category data and meta head * Event: layout_generate_blocks_after * * @param \Magento\Framework\Event\Observer $observer * @return void */ public function execute(\Magento\Framework\Event\Observer $observer) { if ('catalog_category_view' == $this->request->getFullActionName()) { /** * @var \Magento\Catalog\Model\Category */ $category = $this->registry->registry('current_category'); if (is_object($category)) { $pageMainTitle = $observer->getObserver()->getLayout()->getBlock('page.main.title'); if (!$pageMainTitle) { return false; } $title = $pageMainTitle->getPageTitle(); $pageMainTitle->setPageTitle($this->dynamicRenderer->getModifiedCategorySeoName($category, $title)); } } } }