Adding feature to my plone website

I am having my website gifify.com I am trying to build it using plone
So I need one help with this

If you go to front page of this the very first page of website
there are 4 folders right there named as

Featured GIf, Animal Gifs etc

So I have a collection of Gifs in each

Now what I want is that gifs display should change every 5 sec
after every 5 sec another gif will be there on the folder display

How can I do that?

If you don't want to program / code anything you could have a slider (carousel) for each "image"-folder.

It might be very slow, though.

Maybe you can speed it up with lazy loading (collective.lazysizes)

no actually I want to code it

Can I do it with javascript creating array inside Index.html?

@espenmn Can you tell me which file need to be changed
I mean I was thinking of usinng Python to fetch Gifs from folder and display every gifs at interval of 5 second But I am not getting where to write its python code

Please help me out

I would write a browser view (or you could add a theme fragment for Mosaic).

You could then search for the images in 'template.py' and and add a javascript to 'template.pt' that changes the images.

Okay thanks really appreciate your help

You should look over the Mastering Plone training class (see training.plone.org) to understand how to write a browser view, though it's probably not the way I would do it as a newcomer to Plone...I would use an existing add-on that does something like that and inspect how the code is written.

I would activate the Rest-API and do all of this with JavaScript.
Either fetch the list of all images via javascript and do your random slicing in JS, then fetch the image it self.
Or create a BrowserView in python which gives you back a random image and fetch this via JavaScript when ever you want to switch the image.
To create a browser view, you can use the plonecli and the underlaying bobtemplate.plone.

plonecli create addon src/collective.giffyslider
cd src/collective.giffyslider
plonecli add view
1 Like

Great that approach seems great to me