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

17

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

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

BrunoBueno
источник

Ответы:

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();
Рафаэль в цифровом пианизме
источник