Magento 2'de getUrl () işlevi nasıl kullanılır


Yanıtlar:


18

Bir blokta, $this->getUrl()parametreleri Magento 1'den bildiğiniz gibi kullanabilirsiniz $block->getUrl(). Bir şablonda bunun yerine kullanın.

Dış bloklar ve şablonlara erişmeniz gerekir \Magento\Framework\UrlInterface, bu yüzden henüz geçerli sınıfta mevcut değilse, bunu yapıcı parametresi olarak ekleyin, atayın $this->urlBuilder, sonra kullanın $this->urlBuilder->getUrl().


2
yapıcı parametresi olarak eklemeden önce $ bağlamının erişilebilir bir urlBuilder örneğine sahip olup olmadığını kontrol edin.
LucScu

5

Aşağıdaki yöntemi kullanarak magento 2'de bu yöntemi çağırabilirsiniz,

//define query array pass to url
    $query = ['str1' => 'value1', 'str2' => 'value2',];
    $link = $block->getUrl('*/*/*', ['_current' => true, '_use_rewrite' => true, '_query' => $query]);

Ayrıca , gerekli işleminize göre 'müşteri / hesap / giriş' gibi */*/*yukarıdaki URL yerine işlem değerini de iletebilirsiniz .


0

Bunu Magento 2'de

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

Blok dosyasında nasıl kullanılır? backUrl işlevinde başka bir denetleyici almaya çalışıyorum.
jafar pinjar
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.