I'm developing a slideshow feature for a client where they enter entries into a particular weblog (the site is running on EE 1.7x) and set entry and expiration dates on each entry to determine when they start and stop displaying.
In theory, the client could add two entries -- "Entry A" and "Entry B" -- and give them different expiration dates, so that "Entry A" will stop displaying and allow "Entry B" to display. (Only one entry will be displayed at any given time.)
I have a jQuery script that will count down to the expiration date for "Entry A". When the countdown reaches 0, it reloads the page, and then "Entry B" will be displayed. (There's probably a more elegant way to handle the refresh, but I wanted to keep things simple initially.)
However, that isn't what happens. Even after "Entry A" has expired, which should stop it from displaying, and the page reloads, "Entry A" still displays instead of "Entry B". "Entry B" doesn't display until I go into the CP and clear all of the caches.
Here's the code that I'm using to display the entries:
{exp:weblog:entries weblog="foo" status="spotlight" dynamic="off" limit="1" disable="categories|member_data|pagination|trackbacks" orderby="date" sort="desc" show_expired="no"}
So here are my questions:
1) Am I handling/treating the expired entries correctly? Or is my understanding flawed?
2) If this is a caching issue, is there a way to disable all caching for this particular page? I've disabled all of the caching that I can in the CP, and yet, something is still obviously being cached.
3) If there's no way to completely disable caching, is there a third-party add-on that lets you clear caching on the front-end via, say, a special URL, e.g., http://www.domain.com/?cache-refresh=1 (I know there are some performance implications here, but I'm kind of at wit's end right now.)
Any ideas?