Получить текущий URL из PHTML - Magento 2


17

Я изо всех сил пытаюсь показать текущий URL из PHTML в Magento 2.

Любое предложение?

Ответы:


48

Это работает для меня

$this->getUrl('*/*/*', ['_current' => true, '_use_rewrite' => true])

Также вместо $ this вы можете использовать $ block.


Работал отлично. = D
BrunoBueno

1
это работает отлично. мы можем получить URL без baseurl?
Ученик Magento

7

Для этого вам нужно будет использовать пользовательский блок из модуля и сделать следующее:

В Magento 2, вы можете использовать , \Magento\Store\Model\StoreManagerInterfaceкоторый хранится в доступном переменном $_storeManagerдля каждого класса , простирающегося \Magento\Framework\View\Element\Templateпоэтому большинство классов блоков ( Template, Messages, Redirectтипов блоков , но не Textни TextList).

Таким образом, в своем блоке вы можете создать следующий метод для получения текущего URL:

public function getCurrentUrl() {
    return $this->_storeManager->getStore()->getCurrentUrl();
}

Сделав это, вы можете вызвать в своем шаблоне следующее:

$block->getCurrentUrl();

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.