I have a setup a simple twig template which is used to display a simple menu. I have images in here that are static and I would like use the template directory path for the image src. However when I use {{theme.link}} it appears blank. Perhaps I'm referencing something incorrectly. Code below:
<?php
$context['menu'] = new TimberMenu('main-nav');
Timber::render('templates/menu.twig', $context);
?>
and the twig template below:
<ul>
{% for item in menu.get_items %}
<li class="{{item.classes | join(' ')}}">
<a href="{{item.get_link}}">{{item.title}}</a>
</li>
{% endfor %}
</ul>
<img src="{{theme.link}}/assets/images/test.png" alt="">
I understand that I can pass in the directory to the context but I'm curios as to why the built in function isn't working. Probably something simple. First time looking into twig so still getting used to it. Any help greatly appreciated! Thanks
@verdond2: In order to use the {{theme}}
object (and its properties) you need to start with the default Timber context in your PHP file...
<?php
$context = Timber::get_context();
$context['menu'] = new TimberMenu('main-nav');
Timber::render('templates/menu.twig', $context);
?>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With