WordPress Post Expirator 1.3 Released

This should be the last of the rapid releases for a while.  The 1.3 release addresses most if not all of the known issues and feature requests that were reported to me.  I also added a few new features.  The plugin can be downloaded at the WordPress Plugins Page.  Enjoy!


  • Expiration date is now retained across all post status changes
  • Modified date/time format options for shortcode postexpirator tag
  • Added the ability to add text automatically to the post footer if expiration date is set

There are currently 3 valid attributes that can be used with the [postexpirator] shortcode:

  • dateformat – overrides the default date setting
  • timeformat – overrides the default time setting
  • type – full, date or time – defaults to full

For more information on the date/time format see the PHP Date Function.

The post footer text has 3 variables which can be used that will be replaced with the post expiration date/time.  The date and time format defaults will be used.  The options are:


As always, please report any problems!

This entry was posted in WP Post Expirator. Bookmark the permalink.

27 Responses to WordPress Post Expirator 1.3 Released

  1. Austin says:

    Great work! thank you so much, i download it, I just want it show expired day, and do not want to put it in draft or delete, how could i do?

  2. Jon Eland says:

    Hi Aaron,

    This plug-in is brilliant; almost perfect for my needs.

    I am looking for the same functionality – but with some form of author/admin email reminder ahead of ‘expiration’ (maybe 7 days before).

    Had you considered this sort of functionality? I may be able to sponsor some development if you were…

  3. urs says:

    Hi I try the plugin Postexpirator 1.3 im my Blog.Show in post footer is enabled. Problem: As soon I try to Enable Post Expiration Date I have Permission denied Code O Zeile 137, Zeichen 6. How can I solve the Problem.

    Thank for an answer.

  4. Trent says:

    How can I set it show time in my timezone, it seems to be set to US Pacfic time?


  5. Aaron Axelsen says:

    Currently it will use whatever your system timezone is. This is however something I still want to add in the future – so it will automatically use whatever timezone the blog is set to.

  6. Trent says:

    Is there anyway to set it in the .php at the moment (or anywhere else for that matter)??


  7. Aaron Axelsen says:

    There is not really any easy way without actually integrating it in. My best suggestion is to use the server timezone for expiration dates for the time being.

  8. Trent says:

    Thanks Aaron, I’m actually using a shared hosting provider, so I have no control over the time settings.

    I look forward to this feature being added in!


  9. urs says:

    Hi only one question. Is your post expirator 1.3 tested under Windows Server 2003, IIS,PHP????

    Thanks for your answer.

    Regards Urs from Switzerland

  10. Aaron Axelsen says:

    I have not tested this on windows at all. Any feedback is welcome

  11. urs says:

    Hi Aaron is there no way for you to test your postexpirator under Windows Server??
    I have tried also the expirator from Atropos (John Lewitt)this one works fine. But on this one I can’t show the expiration Date on posts. However as soon I click on Enable Post Expiration, my Internet Explorer Version 7 shows: permission denied Code 0

  12. Aaron Axelsen says:

    I do not have windows environment setup for testing – i do all my webhosting on linux. Can you check the apache/iss error log to see what the specific error is?

  13. Paulo says:

    Aaron, excellent work..

    Just a question. Can I order my posts by the expiration date?

  14. JimB says:

    Hi Aaron, thank you so much for your work on this plug in. I was wondering if there was a way to have a post expire in a set amount of days rather than on a specific date. I have a RSS aggregator that automatically creates posts. It would be great to automate the process of deleting them as well,

  15. Aaron Axelsen says:

    The plugin does not do this – however it sounds doable. It would just take some modification and if logic to be performed during the save action.

    I am also working on a plugin to seemless integrate an rss feed into a wordpress blog without actually posting it to the blog – so once the entry is not int he rss feed anymore – it will not show up on the blog site. not sure if that would be of any use.

  16. Aaron Axelsen says:

    Currently that is not available – but it sounds like it should be possible. I’ll add it to the list of things to add.

  17. Jon Eland says:

    Hi Aaron,

    I wondered if you had thought about the email notification option… I am close to commissioning an alternate plugin to achieve this requirement.

  18. wheregotfree says:

    Hi Aaron, firstly, thanks for the great plugin. I would like to ask whether this plugin has the ability to move the posts to a certain category instead of drafts at the time of expiry. Is there a way to tweak it to do this? If yes, please teach me how, thank you

  19. Sergey says:

    Aaron, thank you for your work. I just wanted to ask, if plugin can put away posts from main page but leave them in archive? Should I somehow change home.php?
    Thank you.

  20. Aaron Axelsen says:

    This would be tricky – you would probably need to hook into the_posts action and tell it to only show expired posts if it is on an archive page – but i’m not sure if that would even fully do the trick – good luck!

  21. Aaron Axelsen says:

    This probably wouldn’t be to bad – it would just be the matter of added another option other than changing to draft or deleting – would take a bit of time to implement and test though

  22. Aaron Axelsen says:

    Jon – are you willing to code this into the plugin? I’m more than willing to accept patches – their would be a trick to ensuring that an email is only sent once for the posts – probably by setting a post meta flag that would get changed once emailed

  23. Steven says:

    I have read that some expiration plugins don’t remove the post until someone actually views the post and then the next time it will be gone. Would that be the case with yours?

    Why I ask is because I have been using your plugin, but today I checked and a post was suppose to expire at 9:00 a.m. and it never did. Then I checked through a bunch of posts and many of them I noticed were way over their expiration dates.

  24. Aaron Axelsen says:

    I corrected an issue with posts not being removed – please try the latest 1.3.1 version.

    Due to the nature of how wordpress handles cron, the scheduled process is not actually triggered on that page until someone views it. Because of this, it may take a second reload of the page to actually reflect the post being removed after it has expired.

  25. Heidi says:

    It looks like this is a very successful plug-in. However it does not work for my WordPress version. Will you be updating this for later versions?

    I am currently running WordPress 2.8.4

  26. Karsten Winkler says:

    Is it possible, this plugin to get in other language? Because the timeformat is in many Countrys an other ;-)…
    I need german.

    I saw, that you have got the time with “.date”.
    How can it got wrote in international timeformat like:

    setlocale(LC_TIME, ‘de_DE’);
    echo strftime etc….

    Is it possible, but I haven’t enough knowings, where in the code….

    Can you give help and a little support?

  27. dantel says:

    This probably wouldn’t be to bad – it would just be the matter of added another option other than changing to draft or deleting – would take a bit of time to implement and test though lol..

Leave a Reply

Your email address will not be published. Required fields are marked *