HomePageUrlLocator.php 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. declare(strict_types=1);
  7. namespace Magento\CmsUrlRewriteGraphQl\Model\Resolver\UrlRewrite;
  8. use Magento\UrlRewriteGraphQl\Model\Resolver\UrlRewrite\CustomUrlLocatorInterface;
  9. use Magento\Store\Model\ScopeInterface;
  10. use Magento\Cms\Helper\Page;
  11. /**
  12. * Home page URL locator.
  13. */
  14. class HomePageUrlLocator implements CustomUrlLocatorInterface
  15. {
  16. /**
  17. * @var \Magento\Framework\App\Config\ScopeConfigInterface
  18. */
  19. private $scopeConfig;
  20. /**
  21. * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
  22. */
  23. public function __construct(
  24. \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
  25. ) {
  26. $this->scopeConfig = $scopeConfig;
  27. }
  28. /**
  29. * @inheritdoc
  30. */
  31. public function locateUrl($urlKey): ?string
  32. {
  33. if ($urlKey === '/') {
  34. $homePageUrl = $this->scopeConfig->getValue(
  35. Page::XML_PATH_HOME_PAGE,
  36. ScopeInterface::SCOPE_STORE
  37. );
  38. return $homePageUrl;
  39. }
  40. return null;
  41. }
  42. }