Search

I have a podcast site built with Symphony that uses the CacheLite extension to cache its RSS feed. I'm using the "Expire cache when entries are created/updated" option but it doesn't work quite as I'd like.

The problem is that new episodes are created as "Draft" entries. They're visible to logged in users but do not appear on the public site or in the RSS feed. When the author is happy with the draft, they uncheck the "Draft" option and the episode becomes visible to all.

CacheLite doesn't handle this workflow. The cache is flushed when the new episode is added but because the new entry is not present in the RSS feed, it's not saved to the list of entries for that page. So subsequent edits to the entry (e.g. unchecking the "Draft" flag) do not cause a cache flush.

I'm making a small change to the extension code to call the 'new entry' handler from the 'edit entry' handler. This should bypass the entry-checking and flush the cache whenever any episode is edited. For my purposes that's ok as very old episodes that are no longer in the RSS feed will rarely be edited.

My questions are:

  1. This is a bit of a hack. Any ideas on how else to handle this?
  2. If not, is this a change that others might find useful (perhaps as an addition to the Preferences screen)?

Create an account or sign in to comment.

Symphony • Open Source XSLT CMS

Server Requirements

  • PHP 5.3-5.6 or 7.0-7.3
  • PHP's LibXML module, with the XSLT extension enabled (--with-xsl)
  • MySQL 5.5 or above
  • An Apache or Litespeed webserver
  • Apache's mod_rewrite module or equivalent

Compatible Hosts

Sign in

Login details