Static item in nested list within a fs-list

Description

We have a static item that needs to be placed inside a nested fs-list that is in a fs-list for filtering. It does work, but it places the static item 5 times in every cms item, instead of just once.

Site URL

Required: Please provide a staging/production URL where we can see the issue

Expected Behavior

Put 1 static item in each list instead of 5.

Actual Behavior

Placing 5 static items in every nested list. And probably more when there is more items on the page.

Video/Screenshots

NDA Notice: If you’re under an NDA, please feel free to send us a Direct Message/Email with the above information.

Hey @studiopiraat!

This is a tricky edge case, and there’s a specific reason it’s happening.

Your outer nieuws–list renders each CMS item individually, and inside each item lives its own instance of thema-tag–list (with fs-list-instance="opinie"). When the static item injection runs, it fires once per nested list instance — so with 5 parent CMS items, you get 5 nested list instances, and the static item gets injected into all of them. That’s why the count matches your parent item count exactly.

Your use of fs-list-element="item" (plus fs-list-interactive="true" for nest compatibility) is the correct approach for static items, so your setup isn’t wrong. It’s just that a static item inside a nested list, which is itself inside a parent list, is an edge case that isn’t covered in the current docs. :thinking:

We’re flagging this for the team to dig into. You’ve already shared the staging URL which helps, but could you also share a read-only Webflow designer link? That’ll let the team get into the actual structure directly. :folded_hands:

@Support-Luis @Support-Pedro — could you take a look when you get a chance?

Thank you for your response! @Support-Luis @Support-Pedro do you have any idea how we could tackle this matter? Thanks in advance!!

@Support-Pedro @Support-Luis Have you had the time to look into this issue? Thanks!

Hey @studiopiraat the team has already been notified on this, just waiting on their reply :folded_hands:

Hey @studiopiraat

Let’s use this css in the meantime

<style>
.tag ~ .tag {
    display: none;
}
</style>

Add it to the <head> section of the /opinie page

Also we only need one attributes script
So modify this

<script async type="module" src="https://cdn.jsdelivr.net/npm/@finsweet/attributes@2/attributes.js" fs-scrolldisable></script>

<script async type="module" src="https://cdn.jsdelivr.net/npm/@finsweet/attributes@2/attributes.js" fs-list></script>

To

<script async type="module" src="https://cdn.jsdelivr.net/npm/@finsweet/attributes@2/attributes.js" 
fs-scrolldisable
fs-list
></script>

Hi @studiopiraat

This should sort this out now

The static Opinie tag has fs-list-instance="opinie" & fs-list-element="item"
Since all 5 nested lists also share the fs-list-instance="opinie" attribute, Finsweet treats them as one shared list instance
On render, Webflow produces 1 static item per article (5 total)
Finsweet then collects all 5 static items from the instance pool & injects them into each of the 5 lists, giving you 5 copies per list

Is it possible to remove the attribute fs-list-instance="opinie" from the static “Opinie” tag element (the .tag div)?
You can keep fs-list-element="item", but that instance attribute is what’s causing Finsweet to duplicate elements

If not possible then let’s work with this script

<script>
window.FinsweetAttributes ||= [];
  window.FinsweetAttributes.push([
    'list',
    (listInstances) => {
      listInstances.forEach((listInstance) => {
        if (listInstance.instance !== 'opinie') return;

        listInstance.addHook('afterRender', (items) => {
          items.slice(1).forEach((item) => item.element.remove());
          return items;
        });
      });
    },
  ]);
</script>

Place the script at the Before </body> tag section

This works, thank you so much!