Change content of page based on what link was used to access

I want to build a simple portfolio site for a writer where on her “work” page, people can filter based on a category such as “travel” or “design” to show relevant articles.

I’m planning on probably not using CMS for this, even though that makes sense, since the code may be exported or the client doesn’t want to pay the higher fee for a CMS site.

So my plan was to just have different duplicates of the list of articles, and use an animation to hide/show the appropriate one when the the filter button is pressed.

I’ve done this kind of thing before, but what if I wanted to have a link from the homepage to click “travel” or “design”. Is it possible to load a new page and then have a certain animation triggered based on the link that was pressed on the alternative page?

Alternatively if there is a better way to do this I’d be happy to hear… One option would obviously be to to just have different pages for each filter category “design”, “travel” “all”. But that would require the whole page reloading when a filter is pressed, which didn’t seem great either.

Thanks for any help!

Welcome @Gareth_Hobbs :wave:

Jetboost is the standard plug-n-play version of what you’re asking for: Dynamic Filtering for Webflow CMS | Jetboost

Checkout their offerings.

It is, but AFAIK you can’t do that with Webflow’s built in interactions. That would be custom code that looks for something like a URL param and displays something different based upon it.

Watch out with your SEO on this depending upon how much duplication you want to do.

Jetboost, custom code, and going back to using the CMS with page reloads. There are more approaches but those are a few to get you started.

Hope that helps!

Finsweet’s CMS Filter attributes is a good choice here and free.
It also support filter settings through the querystring, so you can get your custom URLs.

It’s also script-only, with no hosting “app” integration dependencies… but you’d need to verify yourself whether this will work 100% on an exported site.