What Content Scheduler Does
Automatically expire content
With Content Scheduler, you can give your Posts and Pages an automatic expiration date, and tell WordPress what to do with that content when they expire.
Control changes upon expiration
When posts and pages expire, they can automatically be deleted, change status, turn off the “stick post to front page,” make category changes, and more.
Automatic notification when anything changes
Even if you don’t want to make changes to your content, Content Scheduler can send you notifications when the expiration date approaches — perfect for automatically reminding you when certain content needs checked for freshness.
Download and try Content Scheduler
You can find the latest version of Content Scheduler at WordPress.org:
Hello,
Why did you change the post meta names in the new versions? cs-enable-schedule becomes _cs-enable-schedule and cs-expire-date becomes _cs-expire-date. Have you ever heard “backwards compatibility”?
Hi Puck,
I changed it because adding an underscore in front of the name makes the custom field variable not show up under “Custom Fields” — so it can just show up under the Content Scheduler meta box.
Have a good day,
Paul
Hi again Buddy.
I got the same problem again, as I had earlier in april 4th 2011:-)
The post expire does not work after update. After looking in to it I found that it does not add the custom field automaticly. If I make the custom field for it afterwords manually, it works.
So what I need help for is to find out why it doesnt do this automaticly after the update?
Any idea?
Brgds. Lars
Hi, is there any development yet for the next release?
Peter
Hi Peter, sorry so long for the update, but please check out 0.9.8 right now. Fixed for WP 3.3 and adds default expiration. Cheers, Paul
Yes, stopped working on WP 3.3 as well…doesn’t show up anywhere on ad new post.
A quick fix would be great as my clients are becoming frustrated.
Thanks so much!
Corwyn, apologies for any troubles. Please check out Content Scheduler 0.9.8 right now. Fixed for WP 3.3, plus some other fixes. Take care, Paul
I absolutely love this plugin, but it stopped working when I upgraded to 3.3. Well, it still works and I can force it using custom content fields, but the meta field has disappeared making it hard for contributors to put in expiration dates.
Do you have an update releasing soon?
Thanks!
Hi, your plugin is perfect for our community site.
However, the plugin has stopped working since upgrading to 3.3.
Hope you can upgrade as its an excellent plugin
Hi Richard, glad you like the plugin. I just added update to version 0.9.8 a few minutes ago, due to WP 3.3 incompatibility. Also adds a few features. Please check it out. Take care, Paul
Hi Beth, Sorry for your troubles. I’ve updated to version 0.9.8 due to WP 3.3 situation. I also added a few features and verified tag handling works. Please check it out. Take care, Paul
I don’t see content scheduler in my editing screen anymore after update to wp 3.3
Hi John, I just added CS 0.9.8 to address this issue and a bit more. Please check it out. Regards, Paul
Hello
After update WP to 3.3 plugin is not visible when I write new post. It seems to work, but I have no table to set date.
Hi Thomas, I just added CS 0.9.8. Please check it out and let me know if you continue to have troubles. Take care, Paul
I’d love to have customer status be available for use as what to do with the posts / pages when they expire. Currently only no change, draft, and private are available. I’ve got custom status options in there, and currently I have to manually change the posts to the expired status.
Hi Denny, I didn’t even know custom status was possible. Well, anything is possible, but… Good feature suggestion. May I ask how you added the custom status values? Thanks, Paul P.S. Please check out 0.9.8 update for WP 3.3 compatibility.
Hi,
After installing and activating this plugin, on a page or post I only get the option to either disable or enable and set a time.
I cannot find all options that I saw in the screen shots of this nice plugin. I am not a WP-specialist, so I am asking myself: Am I doing something wrong, do I just miss a step or is it something else?
Thanks for your reply,
Joop Overhand
Hi Joop, You’re doing nothing wrong. All those options are under “Settings > Content Scheduler.” They apply globally to any posts / pages / etc. you have set to expire. My plan is to release a paid version of the plugin that allows us to add all those global options in to different “profiles,” and then you can assign a profile to posts that you want to expire — thereby allowing us to expire different posts with different behaviors. I hope that makes sense… Anyway, please check out version 0.9.8, just uploaded, for WP 3.3 compatibility. Cheers, Paul
Thanks for the excellent plugin. I had some trouble getting it to actually expire my posts but after de- and re-activating the plugin it worked.
I especially like the feature of the default expiry of posts of a particular category but I’m a bit disappointed that you still have to enable the expiry functionality by hand with every post in that particular category. Or did I miss out on some setting? I couldn’t find it. If not, this would be my feature request!
Hi Sabine, I’m not fully understanding what you wish CS would do. It may just be that I’m a bit tired today! Please try to straighten me out, help me understand what it is you need. Also, please check out version 0.9.8, just uploaded, for WP 3.3 compatibility. Regards, Paul
I have notify before expiration set to 0, but my authors are sometimes getting one or even 2 emails an hour or two before their post expires and is deleted.
This doesn’t happen every time, but I wondered if there is another way to have them only get one email?
We’ve got the same problem. Attempt to change Expiration frequency to 1440 (minutes) with further deactivating/activating plugin had no effect.
Dear Peter, please help us avoid frequent emails on lots of expirations.
Hi “PrimeHoliday,” I’m not certain what the problem is you’re describing. I did just now add CS 0.9.8 to fix WP 3.3 incompatibility and add a few other features. Please check it out and let me know if you have additional troubles or wishes. Take care, Paul
Definitely this plugin does not work!
Hi Daniel, Please check out version 0.9.8, which addresses WP 3.3 compatibility, an earlier issue with user levels, and adds a few things. Take care, Paul
Hi, it’s me again, this time i’d need a hint, please: Content Scheduler does not stop sending emails, although i deactivated the setting AND all reported posts have already been deleted. Any idea?
Another thing i noticed is that the date value is being set to INVALID, if i do not choose to enable or disable before saving the post.
And are you still working on this project? I could help with i18n for German.
Hi,
This is a great plugin, but anyhow it seems not to schedule on my site, I saw the remarks on ‘enable’ and ‘disable’ and tried that out with no results. Where is the scheduling based on? I suppose it is the ‘clock’ of the server.
I just want to change a post which has (for example) 2 categories, one is homepage. Using the ‘frontpage manager’ plugin I have a number of ‘homepage’ messages on the frontpage. I want to expire them at a certain date/time, so that the post will only appear in the category where it will belong later after it has been removed form the ‘homepage’ category.
For me it looks like this plugin can do that job and I have set all settings to do that.
Any advice here? Settings, clocks, disable/enable?
Thanks in advance,
Peter Luit
Netherlands
To add to my reply:
I am running WP3.2.1 with the PlatformPro theme (using a childtheme) on a customers site. Hosted on PHP 5.2.x.
Peter
Hi Peter,
This is a continuing problem for some folks, but not for many others. A few with problems are seeing things expire 3 hours late, and some are seeing things not expire at all.
The date / time is that of your WordPress installation, not your web server. Scheduled activities like Content Scheduler use what is called wp-cron, so WordPress kicks off the events to happen at the right time. That’s where I’m concentrating on to find a fix.
Which version of Content Scheduler are you using? If it is 0.9.7, it will show you extra debug info (which you can pass on to me) if you turn on debug in your wp-config.php file. The problem seems to be with peoples’ server setups (certain web hosts seem to have no problems) but I hope to figure out what those problems are so I can help folks set things right.
Thanks!
I will try the plugin on a different server/website to see if there is any difference. I’ll let you know. Interesting case if this occurs just in specific cases. Hard to find out…..
OK, I did a new test on a Mac OS X Server, with the following settings:
status: apply changes below
wait: 1 minute
default: 0 0 0
change: no
stickines: no
category change: remove selected
selected: one specific
tags: empty
notification: on
notification: admin
columns: show in columns
datepicker: on
So I had a post which had 2 categories and at a certain time I want one category to be removed form the post. I use the ‘front page manager’, there I can place posts wit the category ‘homepage’. With your plugin I can remove the cat setting and let the post exist in the normal timeline, but not anymore on the homepage. But also here on mac OS X Server it did not work. Did I do something wrong in the settings?
Peter, your settings look fine, to get the results you want. The schedule is not firing as it normally should. If you set “wp_debug” to “true” in your wp-config.php file, then Content Scheduler will give you some debug information at the end of the Content Scheduler settings screen. If you have time, could you do that and let me know the resulting information? I appreciate your time trying to get this to work — I really want it to work for you. Thanks.
OK, I hope you can do something with this output, which I copied at the end of your plugin settings:
eenmaal per uur means ones per hour
tweemaal per dag means twice per day
Cron Events Scheduled
Next Run (GMT/UTC) Schedule Hook Name
sep 29, 2011 @ 13:57 CS User Configured content_scheduler_1
sep 29, 2011 @ 14:00 WPeMatico wpematico_cron
sep 29, 2011 @ 14:02 Eenmaal per uur content_scheduler_notify_
sep 29, 2011 @ 14:02 Eenmaal per uur content_scheduler_notify_
sep 29, 2011 @ 14:02 Eenmaal per uur content_scheduler_notify_
sep 29, 2011 @ 21:07 Tweemaal per dag update_network_counts
sep 29, 2011 @ 22:00 Tweemaal per dag wp_version_check
sep 29, 2011 @ 22:00 Tweemaal per dag wp_update_plugins
sep 29, 2011 @ 22:00 Tweemaal per dag wp_update_themes
sep 29, 2011 @ 22:06 Tweemaal per dag polls_cron
sep 30, 2011 @ 9:57 Eenmaal per dag wp_scheduled_delete
sep 30, 2011 @ 10:46 Eenmaal per dag akismet_scheduled_delete
More Debug Info:
NOTE: You will see either a Timezone String or a GMT Offset — not both.
PHP Version on this server: 5.2.8
WordPress core version: 3.2.1
WordPress Timezone String:
WordPress GMT Offset: 2
WordPress Date Format: j F Y
WordPress Time Format: H:i
Peter, thank you for your continued assistance!
I see a couple problems I can attack now!
sep 29, 2011 @ 13:57 CS User Configured content_scheduler_1
– There should not be a “_1″ at the end of this. I’ll check in to it.
– Curious: Are you running a WordPress multisite install? (I’m guessing not, but need to ask.)
sep 29, 2011 @ 14:00 WPeMatico wpematico_cron
sep 29, 2011 @ 14:02 Eenmaal per uur content_scheduler_notify_
sep 29, 2011 @ 14:02 Eenmaal per uur content_scheduler_notify_
sep 29, 2011 @ 14:02 Eenmaal per uur content_scheduler_notify_
– There should not be three of these for notification — again, gives me something to check in to.
Yes, I am running a multisite in both cases I tested your plugin
Any developments yet in debugging and the possible release of the next version?
Hi Paul,
Thanks for a great and usefull plugin! Had some problems (didn’t do the required changes, although exp. time was passed), until finally I came up with this solution: instead of clicking the radio button on ‘enabled’ and setting the exp. time, I clicked the ‘Disable’. It then lists correctly in the posts list, when the time expires it does all the changes, and then obviously it changes to… ‘Enable’.
Is that how it’s supposed to work? I thought ‘enable’ means the ‘mechanism’ is enabled, and vice versa.
Thanks!
Avi
Hi Avi — wow, you may have just solved a major problem for me! It is supposed to be “Enable,” as you thought — that’s supposed to enable expiration for the Post in question. I’ll check this out and, if it’s messed up in the code I’ll put out a fix.
Thanks so much,
Paul
My pleasure… I installed the plugin also in our ‘live’ site, and there it also works like this (i.e. enabled and disabled mixed). so far though, aside from that, it seems OK and works. Will update here if antyhing changes…
avi.
This plugin looks like it is just what I need, but it doesn’t function at all. I’ve installed it, had it be the only enabled plugin, changed themes, check to see if it was hiding in the screen options, etc, etc, but cannot find the place to insert expiration dates. There is no meta boxes created below or beside the post editor.
Please help.
Man, that is strange. I’ve had one other person with that problem, but I cannot reproduce it. Is there any way you can make me a temporary Admin user on your site? If you’re willing / able to do that, please email me at paul@structurewebdev.com. I’d love a chance to get to the bottom of this, for everyone.
Thanks
I did encounter this problem myself. The problem was the setting for:”Minimum user role to see Content Scheduler fields and shortcodes:” where the only option that made it work was: “Subscriber”. Also, the time schedule input field on posts appear on the main column at the bottom (where custom fields are). Hope this helps.
First of I’d like to say that this plugin was a life saver for me and I greatly appreciate all the work put into it.
I do have a minor concern, it seems the plugin can’t remove tags when entering “-tag” in the tag field. Are you aware of the problem or am I doing something wrong maybe?
Hi Magnus, thanks for the kind words!
I am not aware of a tag management issue. Best thing you could do is send me the string you have in your Content Scheduler settings for the tag changes.
Such as “+archives -featured” or whatever you have. Can you please reply with that here or email it to me at paul@structurewebdev.com?
0.9.8 is just around the corner, so if there is a problem I can get the fix in that release.
Take care,
Paul
Hey Paul. Thanks for the really quick response.
The homepage of my site only allows posts with the tag “forside” (means homepage in Norwegian). Therefore I wrote “-forside” without the quotation marks.
I did however just notice that I am running an earlier version of wp (3.1.3) which might be the problem and I’ll be updating it once the IT-guy has upgraded our MySQL.
Hmm — version 3.1.3 of WP should not be the problem. I’ll do a test here with only one tag change, like yours. I think most (all?) of the tests I ran for tag management had more than one tag change.
I just tested with more than one tag. It seems it won’t remove tags, but adding is no problem.
“-forside, -Pop, -Rock” No luck.
“+forside, +Pop, +Rock” Success.
Would love to see a release where you can schedule a template change on expiration.
Hi Ken, thanks for the idea! To make sure I understand:
If a PAGE is being expired, you want the option to change it’s Page Template to some other template available in your current theme?
I’m adding this to my list for version 0.9.8, as I’ve promised 0.9.7 for too long and it’s still not out yet.
Thanks again,
Paul
Great plugin.
I have a feature request, plus a question.
As a new feature, I would like the plugin to detect custom roles, in addition to standard WP roles.
My question – I am planning on creating a post via a Gravity Form. It will be a custom post type. I would like to automatically set the Content Scheduler to ‘Enable’, and also push across the ‘Expiration date and hour’ from the form (I will default it to 90 days after post date).
Is there a field to set the content scheduler to ‘Enable’? If so, what is it?
Is there a field to set the ‘Expiration date and hour’? If so, what is it?
Thanks!
Ugh – I found this in one of the earlier posts
That answers my question I think.
Hi Bruce,
Man, I hope I’ve replied in time. Those two custom field names have changed. (Ducking the shoe you are now throwing at me.)
I have added an underscore to the beginning of those field names. This way, they only show up in the Content Scheduler metaboxes on Post Edit screens.
(Field names beginning with _ do not show up in the Custom Fields area, by design.)
So, the proper variable names are:
_cs-enable-schedule
and
_cs-expire-date
Let me know if you need more help.
Take care,
Paul
Bruce, what do you need the custom roles for? I’m familiar with how Gravity Forms optionally uses custom roles that can be added with RoleScoper and other plugins. I’m willing to add these, no problem, but I’m wondering what abilities you’d have these roles have? Something like:
“Can view shortcodes,” “Can view expirations,” “Can edit expirations,” “Can edit settings,” etc.?
Paul
I am running WordPress as a multisite. The plugin will work on my parent site, but not on any sub_sites. By “work” I mean I can set the date and time on the individual posts on my parent site, but the box doesn’t even appear on my sub_sites. I’m thinking it has something to do with the way you’re storing the data to the _postmeta. Any ideas? Mind looking into this for me?
Hi David,
Looking in to the multisite situation is on my list for version 0.9.7, which I’m trying to push out the door.
0.9.7 should be in a couple days now (I keep saying that…) and I’d love to hear how it works in your multisite at that time.
Thanks,
Paul
That would be great. Im looking forward to it.
I am very excited about this plug-in but I am struggling getting it fully functional. It does expire my posts and mark them as drafts but I can’t get the date picker to appear and it won’t email me as the author? Any ideas? Here are some defaults I am trying…
$arr_defaults = array
(
“version” => “0.9.6″,
“exp-status” => “1″,
“c” => “1″,
“chg-status” => “2″,
“chg-sticky” => “0″,
“chg-cat-method” => “0″,
“selcats” => “”,
“tags-to-add” => “”,
“notify-on” => “1″,
“notify-admin” => “0″,
“notify-author” => “1″,
“notify-expire” => “1″,
“notify-before” => “1″,
“min-level” => “2″,
“show-columns” => “0″,
“datepicker” => “1″,
“remove-cs-data” => “0″
);
Any suggestions would be very appreciated.
Hi Loren,
If you have time, can you send me a list of the active plugins on your site?
And, what version of WordPress are you running?
I’m sorry it took me a bit to reply to your question.
Emailing as author… I’ll check in to that as well.
Take care,
Paul
I just fond your plug in last week and installed it, but it doesn’t seem to work. I have it set to remove a category at a scheduled time. Is there anything I can do to test it out or change a configuration to diagnose the issue? I asked it to notify me, and that didn’t happen either.
Hello,
Can you please take a look at “Minimum User Role” option, i can’t change it to anything lower than super admin. I need at least authors to be able to see Content Scheduler fields and shortcodes
Thank you
Will definitely check. This may have been fixed in my current development (not released just yet) when I fixed some deprecated functions, but I will double-check. Thanks for letting me know!
Great plugin; thank you very much. I love that the expiry date is maintained in the post meta. One thing Post Expirator has that’s nice is a variety of shortcode date format options. Any chance of expanding this functionality?
I’m glad you like the plugin. In 0.9.8, we’ll be able format the date output by shortcodes. I’m trying to push 0.9.7 out the door first, as it contains a number of feature requests and some debug info to help folks who are having issues. Take care.
Hello Buddy! Great plugin, great work. All things work properly, but i want to ask you about one possibility. It will be fantastic if i could choose categories for expired posts in single post editing menu (together with setting up date of expire). I am try to explain. i have some categories with “actual” and “past” subcategories and i need that post after expire date go to “past” from “actual” subcategory in current big category. at the moment if i use “Match selected — Make posts exist only in selected categories.” option, it duplicate all posts in all “past” subcategories. Thank you for attention.
Hi guinness — Thanks for the kudos, and glad the plugin is working for you. I understand what you are looking for. I am working on a “Pro” version of the plugin that will allow such fine-grain control over Categories.
However, I wonder if you could use Tags to accomplish what you need? Content Scheduler 0.9.7 (not yet released… working on it…) will allow you to add, remove, etc. Tags with a lot more control than you can with Categories.
Is it practical for you to switch your “past” and “actual” handling to Tags instead of Categories, then?
Just a thought. Take care!
Hi LDaniels, thank you for your plugin, even if I am one of those where it doesn’t work. But I already see that you have put much effort into it.
To help you find a solution for this, here’s my information:
(I didn’t wait for a day yet, if it turns out to have worked tomorrow, I will update!)
1. WordPress version.
3.1.3
2. PHP version
5.2.14
3. WordPress timezone.
UTC +2
4. Server default timezone.
I looked it up with phpinfo and am not sure where else I can get that information. If you tell me another place I can find the Server default timezone, I will let you know.
In Phpinfo it says:
date.timezone no value
Thanks again!
Anja
Hey Anja,
Thanks for the info. 0.9.7 will be out (seriously…) any day, including some possible fixes and some tools to help us get some better debug info from folks who are having problems.
Hang in there, and have a good day!
Paul
Thank you for this plugin! Works great, fine options and it is a “must have” for news portals.
Can’t wait for custom taxonomies.
Hi Buddy,
Do you have an idea why your plugin works when i use “Delete” Expiration status option, but not with “Apply changes” (I would like to switch from category A to category B)
I’m using WP 3.1 and your CS 0.9.6
Thanks in advance,
Bouddhalight
That´s the same for me, I have wordpress 3.1 and content scheduler 0.9.6 and categories don´t change (I want to remove one category from some posts). And I´ve waited for that for several days and nothing happens. Mi timing zone is Madrid.
Thank you.
Hi Paul,
First, this plugin is exactly what I’ve been looking for – thank you for your intelligent programming and elegant code!
1. Is there a shortcode or php statement (maybe better) that can be used as an option in a custom field? E.g.
post_id )=2011-04-25 23:55:00")) : ? >(I know that is not the correct syntax by a long stretch, but you get what I mean)
For instance, I run a Picture of the Day. The POTD program (PhotoQ) does all the work of automating the post. It allows custom fields. So every night at 11:00, a new post with a new picture is created from a list of pictures cued up in a separate media library. I would like the ability to expire those posts through a shortcode or php statement in a custom field in the library. I looked at includes/process-expirations.php, but my skills are lacking.
2. So far, the posts I have set to expire have not expired. I’ll check tomorrow as well.
v. 0.96 on WP 3.1.1
The only cron job I’m aware of running is the POTD job above. That is an external CronJob and not a WP-Cron function.
I have set the WP timezone to Phoenix.
I have visited the posts in question before the expiration and after the expiration to make sure WP triggers the event.
Expiration check frequency is 1 minute (the default)
I have deactivated the plugin and reactivated it, then tested again several times.
I have uninstalled the plugin and reinstalled and reactivated it, then tested again.
No luck. I’ll wait another day and see, but would appreciate any insight or help.
Thanks!
Hi LDaniels,
1. PhotoQ sounds interesting. I don’t have time to check in to it just now, but your situation might be very simple. Content Scheduler uses two different custom fields. If PhotoQ is just creating posts for you, then you should be okay.
First, Content Scheduler checks a custom field called “cs-enable-schedule” and, if the value is “Enable” it will proceed. (other value is “Disable”)
Second, CS checks a custom field called “cs-expire-date” for the date/time the post should expire.
There is no rule that says CS has to be the one to set those fields. So long as you have the CS plugin activated and those custom fields exist for your posts, they should expire as indicated.
Oh, that leads to your second problem…
2. Please hang in with me on this one. A lot of people have no problem with CS expiring things, but a handful of people have had exactly the problem you describe, even after all the steps you took of activating / deactivating, etc. I am unable to reproduce the problem, but am gathering data to try figuring out what is going on.
It seems there are settings on your web host (likely PHP settings) that can affect how wp-cron is working, which of course affects CS.
Can you please tell me:
a. The version of PHP running on your web server
b. Who your web host is? (If it is an outside provider.)
Also, do let me know if your expirations started after a day passed.
Thanks for your comments, for trying Content Scheduler, and for hanging in there while I try to understand what’s affecting expirations for some folks.
– Paul
Thanks so much, Paul!
I just sent you an email with info and a login to the site.
Lee
I too have latest version 0.9.6 and posts are not expiring. Seems like this should be top priority.
if you identify like only 5 people who have this issue and get all their info, and then also 5 people who dont have the issue(i feel they are the most important group) you should see a pattern. if you do not send data to me and i will find the pattern for you. im good at pattern finding.
thanks
Norman
Sorry you’re having issues as well, Norman. This is indeed my top priority for Content Scheduler. As for patterns — it’s a matter of getting data from folks in the first place, right now. I’m going to set up a more formal support board to help with this, but in the meantime, could you please provide me a few specifics about your setup?
You already mentioned your Content Scheduler version, thanks. Please let me know also:
1. WordPress version.
2. PHP version. (Note: as far as patterns go, the only one that stands out so far is that PHP version 5.2 is often an issue, whereas 5.3 is not. Not enough data to confirm this yet. Based on some WordPress TRAC comments from past WP versions, this may be due to the version of curl in PHP.)
3. WordPress timezone.
4. Server default timezone.
Thanks very much for your time!
Paul Kaiser
Scheduler box does not appear on post (or page) edit screen as it shown here http://s.wordpress.org/extend/plugins/content-scheduler/screenshot-3.png
Wordpress – 3.1.1
CS – 0.9.6
Do you see the box further down the page?
Does “Content Scheduler” appear in “Screen Options” above?
I’m unable to reproduce the problem.
Screenshots here — http://mitai.ru/tmp/
no suggests why box does not appear?
If the box is not appearing anywhere, make sure it isn’t “hidden” in your “Screen Options” at the top. I’ll assume that isn’t the case, though.
I had this happen with one other site, which was using a custom plugin to add other such metaboxes to their Post / Page screens. There was code in their other plugin that forced the display of their metabox and incorrectly suppressed the display of metaboxes from other plugins.
I suggest, if possible, disabling all your other plugins and trying Content Scheduler to see if the CS box correctly displays. Then, activate your other plugins one at a time, testing with each to see if the CS box disappears. Let me know if this yields any results.
If you want, send me a list of the active plugins on your site, and if I have time I’ll see if I can find an issue.
– Paul
oops… i’ve not seen this before:
> Does “Content Scheduler” appear in
> “Screen Options” above?
No, it isn’t.
> make sure it isn’t “hidden” in your
> “Screen Options” at the top.
It is not. There is only standart options like Author and Versions.
> I suggest, if possible, disabling all your other
> plugins and trying Content Scheduler to see
> if the CS box correctly displays.
I did it. Even when only this plugin activated — still nothing.
I am having the same issue. The plugin is the only one running, but the meta box doesn’t appear anywhere on the post edit screen. I am using WordPress 3.2.1
Parse error: syntax error, unexpected T_ARRAY, expecting ‘)’ in /homez.361/lampa/www/wp-content/plugins/content-scheduler/content-scheduler.php on line 1284
Sorry you’re having this problem. This means you are not running PHP 5.3 or above, which has the array_replace function. So, Content Scheduler has its own version of that function for you, BUT… for some reason it is not working for you, throwing this error. If you update to PHP 5.3 or above, the error will go away, but you should not really have to do that… I’ll see if I can figure out what’s wrong with the array_replace function CS has.
Can you tell me: (1) Version of WordPress you’re running and (2) Version of PHP on your server?
Thanks,
Paul
Php prior to 5.3 can’t accept param types.
Acceptabe code: function array_replace( &$array, &$array1 )
Argh… Thanks for pointing that out! I’ve fixed this in 0.9.6. Take care.
Hi there — I fixed this in version 0.9.6, which I just submitted 11:53a CST. Hope this helps.
Hi Buddy,
I have a custom post type “Project” with a custom taxonomy “Status” (with tags “work in progress” and “released”).
I ‘d like to use your plugin in order to change the status tag of a project.
Is there a way to do that with your plugin ? :/
Thanks,
Bouddhalight
Hi Bouddhalight,
Thanks for checking out Content Scheduler.
The plugin cannot currently manipulate custom taxonomies. I’ve been thinking over how to do this in the Pro version (no problem) but am still working on how to do it in a practical manner for the freely-available one.
There will be a Content Scheduler update sometime this week, so I’ll see if I can incorporate it.
Take care,
Paul
I hope you could… I’m waiting for it !
Thanks for the quick answer !
Have a good day,
Bouddhalight
Hi.
I got the same issue as others here, that my posts just won´t expire. I have tried to delete plugin and reinstall it but it won´t make any differense. Is there anything (or anyone) that can help me make this wonderful plugin work?
This plugin has just the things I need, so I really need this to work.
Brgds.
Lars
Hi Lars,
I’m still working every day to figure out why the plugin works great for some, but won’t expire posts for others.
Questions for you:
1. What timezone are you in?
2. What version of Content Scheduler have you last tried?
3. Have you seen what happens if you wait a full day after your posts were supposed to expire? Obviously it would be a bug, but in the cases where folks let me on to their sites to troubleshoot, everything started working fine the day following installation. I don’t know what that means, yet, but I wanted to ask if you’ve had the same experience.
I’m working on i18n support at this very moment, so it would be great if I could get this nagging issue worked out fore everyone for version 0.9.5.
Thanks for any information you can provide.
Paul
Hi buddy.
Thanks for the quick answer. My timezone is set to Oslo and I am using version 0.9.4. I have been waiting several days after expiring without anything happens.
I can let you in to the site if you wan´t but I will need your email adress for that?
Lars
I am still testing, but it seems to not work. I tried disable my other plugins as well without any luck. So maybe I should have tried to delete them, but that I can’t do because of the site is operating.
Buddy…
What did you do????? It now works when I updated it????
Thanks a lot man. You made my day.
Hi Lars, I’m very glad it is working for you now. The frustrating thing is… I don’t know why. All I did in the 0.9.5 release is add i18n support. It seems there is something on some peoples’ sites that creates an odd delay before CS starts working. Once that “delay” is past, everything works great from that point on, solid. Again glad it’s working for you, and I’m continuing to work on improvements. Cheers,Paul
Hi Paul,
Many thanks! it works via CSV upload.
Exact value for cs-enable-schedule column should be ”Enable” or ”Disable”.
Take care
Jeffrey
Hi,
Its a great plugin.
I always upload my content via CSV import tool. Which column name can i use to import the expiry date with this plugin? Or isnt that possible?
Hi Jeffrey,
The Content Scheduler information is stored the same way custom_fields are stored (that is, in the _postmeta WordPress table.)
I see that at least a couple of CSV Import plugins support custom_fields, so I think you should be okay.
The “keys” for Content Scheduler’s custom_fields are:
cs-enable-schedule (value can be “Enable” or “Disable”)
cs-expire-date (value must be in the following format: YYYY-MO-DA HH:MM:SS, for example ’2011-04-24 20:58:00′ )
Let me know if this helps you out. Also, if you are using a particular CSV importer successfully with Content Scheduler, I’d love to know which one works for you.
Take care,
Paul
I have installed this plugin, and have set a specific post to expire today, for example, a couple hours ago (to expire a couple hours ago). I have set the settings to change the category to Past Events. So it should come out of all other categories and move to this new category, except it is not working. None of the posts I have set to expire are expiring.
See: http://www.councillordavis.com/events Both the top and the bottom event should be gone from that list and in the sub menu of past events under the events menu item.
I have tried setting my time both ways, deactivitating and reactivating, and still it does not change my post category and move it.
I really do need a good expirator for events and other items on this site. Can you help me narrow down what the problem might be? I am using the following plugins, but don’t think any would interfere with the scheduler:
AddThis Social Bookmarking
All In One SEO Pack
Contact Form 7
DBD Mailto Encoder
HungryFeed
Newsletter Pro
RAX _ Google Language Translator
Really Simple CAPTCHA
RS EVENT multiday (deactivated to test for conflict – nothing changed)
Secure WordPress (deactivated to test for conflict – nothing changed)
Twitter Feed for WordPress
WordPress Hashcash
WPTouch
Or does the plugin NOT go back into the existing posts does it only work on new posts?
Please help if you can.
Thanks
Hi Romelda,
Sorry you’re not able to get this working on your site yet. However, many people do have it working, so I’m sure I can probably help you troubleshoot this issue.
To answer one question: You should be able to add expiration to existing posts, without a problem. You do have to Edit each of those posts to give them an expiration date, of course, but once they have an expiration date (and expiration for that post is “enabled”) then they should expire once your date / time is reached.
I’m going to respond to your email and see if we can figure out what’s going on, and then if we find out anything useful I’ll share it back here in the comments.
Thanks,
Paul
Hi Paul,
I just found your plugin and I am running the latest version 0.9.2 and have been reading through this thread and everything seems to be in order but it simply does not work! Im running WP 3.1 I have mine set up to change the category to archive once the day and time is chosen in the date picker. The date and time comes but nothing happens! Any ideas ? Thanks in advance!
Hi Lawton,
A couple possibilities:
1. If you activate any plugins after Content Scheduler, and those plugins don’t follow the rules, they can erase CS entry to wp-cron, so CS won’t ever run. If this is the case, simply deactivating CS and reactivating it should help.
This *probably* isn’t your situation, though, since you just downloaded it — probably didn’t activate anything after CS, I’m guessing.
2. Under “Settings > Content Scheduler,” the second option, “Expiration Frequency” — make sure that is a reasonable amount of time. It defaults to 1 minute, which means your WordPress install should check for expirations once every minute.
3. WordPress only runs scheduled events upon page loads. So, if you are only testing CS by staying in the back end, CS might never be triggered. Make sure that, after your expiration date / time is reached, you visit an actual page (any page) on your site. Then check to see if the post has expired successfully.
Please keep me posted if you have success or not.
Lawton, I also wanted to mention an odd situation I’m investigating about Content Scheduler and any other WordPress scheduled activity. When I set my site’s Timezone to, say, “UTC -6″ (Manual offsets,) schedule events are usually scheduled for the wrong time.
However, when I set it to something like “America – Chicago,” events are scheduled properly. (That’s the same thing as UTC-6, but seems to make a difference sometimes.)
I’m still looking in to this, and I don’t know if that was the problem you’re having, but I wanted to make mention of it.
Take care,
Paul
Thanks for your response.. Yeah I tried both your suggestions before posting up and still have the same issue. Maybe it is a plugin conflict I might need to de-activate my other plugins and see if that is causing the problem.
Ok, i now see why Disable is needed: once entered a date cannot be removed, yet.
It could still be made into a checkbox and get the same functionality. I’ll think about it — I think originally I chose the radio button approach so it was very clear that expiration was disabled for the post.
Great plugin, thank you!
I’d like to suggest a change and a feature:
- the meta-box could get rid of the ‘Disable’-radiobutton in favor of a single checkbox.
- it would be handy, if you could create different sets of settings to choose from via a dropdown. Then you could choose between e.g. removing the sticky feature of a post or removing the post completely. It would be perfect, if those actions could be chained, e.g. remove sticky at 8 and remove post 2 days later.
Thanks again,
Marco
Thanks Marco. I’ll think about switching out a checkbox for the radio buttons — it could be done either way.
Your second idea is one I’ve been working on all along for the paid version of Content Scheduler. It allows you to create an unlimited number of expiration “profiles” that indicate what to do upon expiration (instead of just having one global place to specify what to do.) Further, one “Profile” can consist of a chain of other profiles, so you could, for instance: (1) Remove sticky on the first date (2) Move to archives on the second date, and notify the author (3) Make live and sticky again on the third date, and so on.
I’m working hard to make the paid version available as soon as possible, but need to get localization support going first.
Thanks again for checking out Content Scheduler, and for sharing your ideas!
Take care,
Paul
After some more detailed work, I saw that I was right about another plugin interfering with CS, but wrong about the plugin name. In my case, it is a plugin called “Postie”. Problem has been solved when I corrected the errors in the a.m. plugin as warned here:
http://codex.wordpress.org/Plugin_API/Filter_Reference/cron_schedules
If CS is not working in your website, my advise is:
- Deactivate all the plugins
- Activate WP-Crontol or Cron View and start viewing cron schedules
- Activate CS. You should see two CS cron hooks with Display Names
- Activate your plugins one by one. After each activation, check cron schedules. If one of the CS hooks or display names disappear, that is the poorly written, problematic plugin.
I checked CS from beginning to end, there is nothing wrong about its codes (However I did not like too many comments included and empty lines which makes very difficult to follow the codes).
Hi Puck Robin,
Thanks so much for sharing what you found regarding wp-cron problems!
I’m releasing an update this week that will try to keep this from happening, and add a few feature requests.
Also, FYI, before the 1.0 release I will be tidying up the code a bit, including removing redundant blank lines and my sometimes prolific commenting.
Thanks again,
Paul
CS was not working in my customer too. Your advise about Cron View helped. I saw that only one hook of CS was there. After a quick search, I found that problem is in WP Database Backup plugin, probably coming from pass-by-reference &$this.
Hi Buddy,
I’m so relieved to have found this plugin. This is precisely what I was looking for!
Ok, well, almost. I was wondering if there was an easy way to automatically change tags on expiration, instead of categories. Is there an easy way to accomplish this?
Thanks again for the awesome plugin!
A few days ago, I released version Content Scheduler 0.9.2, which will allow you to add tags upon expiration. Do you need it to be able to remove tags, as well? (Similar to how categories work?)
Cheers, Paul
How can I show the scheduler data on the blog?
There isn’t a way to do this currently. I know that Post Expirator plugin has a shortcode to allow this. I’ll add it as a feature request.
A few days ago, I released version Content Scheduler 0.9.2, with shortcode support. By adding the shortcode to a post, it will show when the post is to be expired.
Cheers, Paul
How can i display the date in a post. What’s the shortcode?
Is there a PHP statement to display it in a template-file?
Grtz. Ricardo
Ricardo,
The current version has a basic shortcode for displaying the expiration date in a post:
[cs_expiration]
I can add a template tag in a future release.
Thanks,
Paul
I absolutely love the idea behind this plugin!!! However…
I’m running WP 2.9.2 and I can’t see anything when I edit my posts or pages to allow me to set an expiration. Settings page looks good, and display in list show up as “(Expiration Disabled)” for all posts.
Hello…I am running WP 3.03 and I can’t get the plugin to work either.
I’ve checked settings, deactivated and reactivated, and nothing. Any ideas?
Thanks in advance.
Hi Jamie, Which version of Content Scheduler are you using?
Any chance you can add support for Custom Post Types? That would make this a killer plugin for adding e.g. an Alerts section to the top of your Web site that includes only one text field line, custom styling, and an easy way to let clients administer/schedule their own Alerts on their site…
Good idea. That should be very easy to add, fairly quickly. Thanks.
A few days ago, I released version Content Scheduler 0.9.2, with support for custom post types.
Cheers, Paul
Hang tight, everyone, Content Scheduler 0.9.2 is around the corner, with a few new configuration options for advanced users, some tweaks to fix scheduling issues on a small number of sites, and proper hooks for localization / translation.
Great plugin – many THANKS!
Please add there the possibility of translation…
I’ve checked everything I had in mind the two points that I commented, but the posts are still not expired. I left all night and all day today, but nothing.
I definitely think it does not work in 3.0.3
I’ve just released version 0.9.1, which allows you to specify how frequently WordPress checks wp-cron schedules for Content Scheduler. This should make it easier to troubleshoot, as version 0.9 had hard-coded 1 hour as the frequency. Please try the updated version of the plugin. Also, try deactivating and then activating the plugin. This resets the schedules for wp-cron.
I have updated the plugin, but nothing changes
Hmm. Can you try deactivating and then reactivating the plugin? I’m going to put in a pane that provides debug info for version 0.9.2 to help troubleshoot these types of issues.
In the meantime, there is a plugin called “Cron View” (http://wordpress.org/extend/plugins/cron-view/ ) that will show you if the two Content Scheduler entries are properly registered.
I’ll get to the bottom of this, hang in there…
Hi Buddy
Yes, i,ve deactived and reactived the plugin.
I,m using a similar plugin (WP Crontrol) and show correctly the two content scheduler entries:
content_scheduler
content_scheduler_notify
I will wait to the next release…
Thanks for all
Hi,
I think it does not work in WP 3.0.3
The posts has expiration date, but when it happens this time nothing happens, or change of status or category.
Thanks
Hi there. I’ll double-check in 3.0.3.
In the meantime, be aware that:
1. Scheduled tasks in WordPress (such as expiring posts) only have a chance to occur when someone visits a page on your site. So, if you set a post to expire at, say, 08:00, but noone visits your site until 08:50, the post won’t actually expire until 08:50.
2. Content Scheduler 0.9 only runs expirations once per hour. So, if you activate the plugin at 08:25 in the morning, and set a post to expire at 08:45 in the morning, it won’t actually have a chance to expire until 09:25 in the morning. After that, it will check at 10:25, 11:25, 12:25, 13:25, and so forth.
NOTE: It has been requested that I make this configurable by the user, instead of hard-coding it at 1 hour. Look for this change in version 1.0.
Considering the above 2 things, please have a look again at your posts and see if they are indeed expiring. Please let me know — I’d like to make sure there isn’t some other issue I’m missing before releasing version 1.0.
Great concept for a plugin and good selection of options upon expiry but would be very useful to have a ‘move to’ category option too to move the post to, for example, an Archive category. Tried to do a workaround for this by selecting the Archive category as well as the main category in the post and in Settings changed it to ‘Match selected — Make posts exist only in selected categories.’ but it didn’t remove it from the main category. Also tried the ‘Remove selected — Remove posts from selected categories.’ option and selected all the categories in Settings except the Archive category but this also didn’t work. In fact the only option I could get to work was the Add options which did add the selected category but this is not what I’m trying to do.
Also, noticed that the data picker doesn’t appear to work?
Can I make a couple of suggestions? Would be good if it automatically changed to Active when you enter a date/time and would be good to have an option upon expiry that it changes the post title to gray (and possibly add a strikethry?) so it remains in the category list but users can see it’s expired.
Thanks.
Thanks for the kudos. Good suggestions! It sounds like I need to double-check some of the Category functionality — the features you’re asking for are already supposed to work. I’ll give it a look and see what’s up.
Hi Ben,
I’ve been testing this morning, regarding the Category changes, and I’m wondering if the Content Scheduler settings screen is just confusing. My test site has passed all Category change tests.
Barring some conflicting wp-cron entry by another plugin of yours, I’m not sure what might be happening.
Re-reading your original email:
> would be very useful to have a ‘move to’ category option too to move the
> post to, for example, an Archive category.
This is what I intended the “Match Selected” option for. My thought was that if you wanted all the Post removed from all Categories, and to have it added to a new Category (such as “Archives”) you could do this by choosing “Match Selected,” and choosing the “Archive” category in the “Selected Categories” list.
So, that is still not working on your site?
After checking my tests and re-reading your email, I’m wondering if all of your tests only *seemed* to not be working, because the changes only happen hourly?
** I’m working on your suggestions, as well.
** Do you think people would rather control how often the expirations are checked, instead of having it hard-coded to 1-hour?
I really want to make this work for you, and appreciate your time in explaining what’s happening for you.