Where can I learn more about taking advantage of Liquid 2.0?

Hi @shannonlynd,

My understanding is that there is little difference between the two, other than a performance boost when using Liquid 2.0 (and of course the benefit that it’s bundled with Nice 2.0, which is better)

The one case where there may be a difference is when you’re passing data between scopes. I think @Adam.Wilson described it well in a previous discussion on the topic:

In most general cases Liquid 1.0 will work the same as 2.0, but it’s quite different in that 1.0 kinda processed ‘upscope’ while 2.0 goes ‘downscope’ (well that’s how I think of it anyway).
In 1.0 we could pass Liquid variables ‘up’ from a page content area into the head of a template for example. Whereas 2.0 works more like BC did, where variables are passed ‘down’ from template to page - which is more practical I think, but there were cool advantages of it being the other way too.
There are surely many other technical differences in the implementation, but that’s the most prominent difference I think in terms of developing with it.

Also there is the possibility for recursion:

Because 2.0 goes ‘downscope’, putting {{this}} on the page level causes a recursion (using it in the template level is fine though).
So I’m guessing {{this}} will be off limits for use on pages/items, unless they can put some kind of block on the recursion or something???

I would love to hear from the treepl devs @Eugene or @vlad.z if there are any other differences/benefits we should be mindful of.

2 Likes