Obter URL atual de um PHTML - Magento 2

17

Estou tentando mostrar o URL atual de um PHTML no Magento 2.

Alguma sugestão?

BrunoBueno
fonte

Respostas:

48

Está funcionando para mim

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

Além disso, em vez de $ this, você pode usar $ block.

Ігор Климчук
fonte
Funcionou perfeitamente. = D
BrunoBueno
1
isso está funcionando perfeitamente. podemos obter o URL sem baseurl?
Magento Learner
7

Para fazer isso, você precisará usar um bloco personalizado de um módulo e faça o seguinte:

No Magento 2, você pode usar o \Magento\Store\Model\StoreManagerInterfaceque está armazenado em uma variável acessível $_storeManagerpara todas as classes que se estendem \Magento\Framework\View\Element\Templatepara a maioria das classes de blocos ( Template, tipos de bloco Messages, Redirectmas não Textnem nor TextList).

Dessa forma, no seu bloco, você pode criar o seguinte método para obter o URL atual:

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

Depois de fazer isso, você pode chamar o seguinte em seu modelo:

$block->getCurrentUrl();
Raphael na Digital Pianism
fonte
1
$block->getRequest()->getUriString();
Maks
fonte