field_my_link
(Makine adı) adında bir Link alanım var .
Bir Twig şablonunda, bağlantının URL değerini şu şekilde alabilirim:
{{ node.field_my_link.uri }}
Link’in URL’si içinde harici bir URL varsa, örneğin http://example.com
iyi çalışıyordur.
Ancak, eğer Link’in URL’si içinde dahili bir URL varsa, örn."/node/11"
şöyle bir değer alıyorum:
"internal:/node/11"
ile "internal:
" öneki ile.
Nasıl alabilirim Geçerli URL’yi ?
Örneğin, bağlantının URL’si " http://example.com
" İstiyorum " http://example.com
" (bu zaten çalışıyor), bağlantının URL’si " /node/11
" göreceli URL’yi istiyorum " /node/11
" ise, bağlantının <front>
URL’si " /
" URL’yi istiyorum " ", vb. .
DÜZENLE
Bunu kullanarak bir PHP ön işleme fonksiyonu içinde istediğim değeri alabilirim:
$url = $variables['node']->get('field_my_link')->first()->getUrl();
Twig şablonunda aynı değere nasıl erişebilirim?
Önişlem işlevinde bunu yapabileceğimi biliyorum:
$variables['my_url'] = $url;
Ardından, Twig’deki URL’ye URL’ye erişin {{ my_url }}
, ancak her bağlantı alanımda ön işleme işlevi yazmaktan kaçınırdım.
node.field_my_link.uri
Harici bir URL benzeri olursa ne olurhttp://www.example.com
?