2

Coming across a parsing problem when trying to get related Playa entries categories in a nested list with Stash. The setup involves Playa pulling related entries (videos) from a parent entry (feed) as a Stash list, and then a nested list for each video to include the categories of each video.

Example Code that stashes the data:

{exp:channel:entries channel="feed" dynamic="no" url_title="{segment_2}" limit="1"}

    {!-- The Feed --}
    {exp:stash:set name="feed_title"}{title}{/exp:stash:set}

    {!-- The Feed's Videos : Playa Field (Parent List) --}
    {exp:stash:set_list name="videos" parse_tags="yes" parse_depth="2"}

        {cf_feed_videos}

            {stash:entry_id}{entry_id}{/stash:entry_id}
            {stash:title}{title}{/stash:title}
            {stash:file}{cf_video_file}{/stash:file}

            {!-- Video Categories : EE Categories (Nested List) --}
            {exp:stash:set_list:nested_cats name="categories_{entry_id}" context="{entry_id}" parse_tags="yes"}
                {categories}
                    {stash:category_url}{category_url_title}{/stash:category_url}
                    {stash:category_title}{category_name}{/stash:category_title}
                {/categories}
            {/exp:stash:set_list:nested_cats}

            {!-- Video Links : Matrix Field (Nested List) --}
            {exp:stash:set_list:nested_links name="links_{entry_id}" context="{entry_id}" parse_tags="yes"}
                {cf_video_links}
                    {stash:link_url}{mx_url}{/stash:link_url}
                    {stash:link_title}{mx_title}{/stash:link_title}
                {/cf_video_links}
            {/exp:stash:set_list:nested_links}

        {/cf_feed_videos}

    {/exp:stash:set_list}

{/exp:channel:entries}

Example Code that outputs the data:

{exp:stash:get_list name="videos" limit="1" sort="desc"}

    ...

    <h1>{title}</h1>
    <ul class="categories">
        {exp:stash:get_list:nested_cats name="categories_{entry_id}" context="{entry_id}"}
            <li><a href="{category_url}">{category_title}</a></li>
        {/exp:stash:get_list:nested_cats}
    </ul>

    ...

{/exp:stash:get_list}

So everything parses correctly except for the variables within the nested categories loop.

The {category_title} for example renders as "{category_name}" as if it's not being parsed when it's stashed in the nested set_list.

I have tried setting a higher parse_depth on the parent set_list, or setting a parse_depth on the nested categories list, however these do not seem to work either. Also in the example code, there is a second nested list (video links) which is pulled from a matrix field at the same level of the categories nested list, and this renders just fine.

Is this a question of the EE {categories} tag pair parsing later in the process than custom fields like a matrix field?

1 Answer 1

3

Turns out the problem wasn't a parse issue after all. Playa disables categories by default so by placing a blank disable="" parameter on the {cf_feed_videos} tag it overrides this and re-enables categories for the related entries.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.