{"id":325327,"date":"2026-07-15T10:11:47","date_gmt":"2026-07-15T10:11:47","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/queue-posts-for-publication\/"},"modified":"2026-07-15T10:11:29","modified_gmt":"2026-07-15T10:11:29","slug":"pheasantly-queued-publication","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/pheasantly-queued-publication\/","author":14249487,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.40","stable_tag":"0.40","tested":"7.0.1","requires":"5.0","requires_php":"7.4","requires_plugins":null,"header_name":"Pheasantly Queued Publication","header_author":"Karol K","header_description":"A plugin to queue and schedule posts for future publication on the next available slot.","assets_banners_color":"c350bf","last_updated":"2026-07-15 10:11:29","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/wpwork.shop\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":24,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.40":{"tag":"0.40","author":"karol-k","date":"2026-07-15 10:11:29"}},"upgrade_notice":{"0.40":"<p>Initial WordPress.org release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3608620,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3608620,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3608620,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3608620,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.40"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3608620,"resolution":"1","location":"assets","locale":"","width":1865,"height":746},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3608620,"resolution":"2","location":"assets","locale":"","width":1842,"height":1334},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3608620,"resolution":"3","location":"assets","locale":"","width":418,"height":699}},"screenshots":{"1":"Publication Slots \u2013 screen for configuring publication slots","2":"Queued Posts \u2013 calendar view","3":"The main post scheduling section when editing a post"}},"plugin_section":[],"plugin_tags":[11916,8948,4645,4062,50254],"plugin_category":[40],"plugin_contributors":[271632],"plugin_business_model":[],"class_list":["post-325327","plugin","type-plugin","status-publish","hentry","plugin_tags-editorial-calendar","plugin_tags-publication","plugin_tags-queue","plugin_tags-schedule","plugin_tags-schedule-posts","plugin_category-calendar-and-events","plugin_contributors-karol-k","plugin_committers-karol-k"],"banners":{"banner":"https:\/\/ps.w.org\/pheasantly-queued-publication\/assets\/banner-772x250.png?rev=3608620","banner_2x":"https:\/\/ps.w.org\/pheasantly-queued-publication\/assets\/banner-1544x500.png?rev=3608620","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/pheasantly-queued-publication\/assets\/icon-128x128.png?rev=3608620","icon_2x":"https:\/\/ps.w.org\/pheasantly-queued-publication\/assets\/icon-256x256.png?rev=3608620","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/pheasantly-queued-publication\/assets\/screenshot-1.png?rev=3608620","caption":"Publication Slots \u2013 screen for configuring publication slots"},{"src":"https:\/\/ps.w.org\/pheasantly-queued-publication\/assets\/screenshot-2.png?rev=3608620","caption":"Queued Posts \u2013 calendar view"},{"src":"https:\/\/ps.w.org\/pheasantly-queued-publication\/assets\/screenshot-3.png?rev=3608620","caption":"The main post scheduling section when editing a post"}],"raw_content":"<!--section=description-->\n<p>Pheasantly Queued Publication is a WordPress post queue for editors who want to schedule posts on a recurring publishing queue without calculating dates manually.<\/p>\n\n<p>Define a recurring post schedule or weekly publishing calendar, then queue posts for publication in the next available publishing slot.<\/p>\n\n<p>Keep using WordPress' native scheduled posts, but choose publish times from reusable weekly slots such as \"Monday 13:00\" or \"Friday 09:30\". This gives your content publishing schedule a predictable rhythm while keeping WordPress as the source of truth for publication.<\/p>\n\n<p>The plugin does not create a separate publication queue of post records. It stores reusable slot definitions in one custom table and stores actual scheduled-post state in WordPress core posts with <code>post_status = future<\/code>. WordPress core handles publication in the normal scheduled-post way.<\/p>\n\n<h4>Features<\/h4>\n\n<ul>\n<li>wp-admin screen for managing recurring publication slots for your content workflow<\/li>\n<li>Validation that prevents duplicate weekly slots with the same day and time<\/li>\n<li>Queue action in the classic editor<\/li>\n<li>Queue action in the block editor<\/li>\n<li>Scheduled-post overview screen with calendar and list views, useful as a lightweight editorial calendar or content calendar<\/li>\n<li>Queue a post into the next available slot<\/li>\n<li>Pick one of the next available upcoming slots when you need to schedule blog posts in advance<\/li>\n<li>Occupancy avoidance: datetimes already used by other scheduled posts are not offered<\/li>\n<\/ul>\n\n<h4>Getting started<\/h4>\n\n<ol>\n<li>Go to <strong>Queue Posts -&gt; Publication Slots<\/strong>.<\/li>\n<li>Configure recurring slots by adding a day of week and time of day. Each row is a recurring pattern, not a one-off date.<\/li>\n<li>Open an unpublished, unscheduled post.<\/li>\n<li>Find <strong>Queue for publication<\/strong> in the post status or publish area (works both in classic and block editor).<\/li>\n<li>Choose <strong>Queue for next slot<\/strong> or <strong>Pick a slot<\/strong>. This will queue for the next available slot or your selected specific upcoming slot.<\/li>\n<li>Review scheduled posts at <strong>Queue Posts -&gt; Queued Posts<\/strong> in calendar or list view. The post scheduling calendar shows every future post on the site, not only posts queued through this plugin.<\/li>\n<\/ol>\n\n<h4>Usage scenarios<\/h4>\n\n<p><strong>How to create a weekly publishing schedule<\/strong><\/p>\n\n<p>Go to <strong>Queue Posts -&gt; Publication Slots<\/strong>. Select a weekday and time, then click <strong>Add Slot<\/strong>. Repeat this for every regular publishing time.<\/p>\n\n<p>Each row is a repeating weekly pattern rather than a one-time event. For example, Wednesday at 9:00 AM makes future Wednesdays at 9:00 AM available to the queue.<\/p>\n\n<p>You can add multiple times on the same day, such as Tuesday at 9:00 AM and Tuesday at 3:00 PM. You cannot add the exact same weekday and time twice.<\/p>\n\n<p><strong>How to queue a post into the next open slot<\/strong><\/p>\n\n<p>Open an unpublished, unscheduled post in the block editor or classic editor. Open the <strong>Queue for publication<\/strong> options and select <strong>Queue for next slot<\/strong>.<\/p>\n\n<p>Pheasantly finds the earliest configured time that is in the future and is not already occupied. The post then becomes a normal WordPress scheduled post.<\/p>\n\n<p><strong>How to choose a specific upcoming slot<\/strong><\/p>\n\n<p>Open the queue options and choose <strong>Pick a slot<\/strong>. Select a date and time, then confirm your choice.<\/p>\n\n<p>The picker shows up to 10 upcoming free dates. Occupied dates are omitted. If the date you want is absent, another post may already be scheduled for that exact time, or the date may fall beyond the choices currently shown.<\/p>\n\n<p><strong>How to queue several drafts<\/strong><\/p>\n\n<p>Queue ready drafts in the order in which you want them published. Use <strong>Queue for next slot<\/strong> on each draft.<\/p>\n\n<p>After the first draft takes the earliest free date, the next draft takes the next free date, and so on. Review the final order under <strong>Queue Posts -&gt; Queued Posts<\/strong>.<\/p>\n\n<p><strong>How to review upcoming publications<\/strong><\/p>\n\n<p>Go to <strong>Queue Posts -&gt; Queued Posts<\/strong>. Use the calendar to see your schedule across months, or use <strong>Toggle View<\/strong> to switch to the grouped list. Smaller screens use the list view by default.<\/p>\n\n<p>Post titles link to their editor screens. The overview includes every future post on the site, including posts scheduled manually or by another plugin.<\/p>\n\n<p><strong>How to change or remove a queued post<\/strong><\/p>\n\n<p>A queued post is an ordinary WordPress scheduled post. Open it and use the standard WordPress scheduling controls to change its publication date and time.<\/p>\n\n<p>To remove it from the schedule, change it back to a non-scheduled status such as Draft and save it. You can queue it again later.<\/p>\n\n<p><strong>How to change the recurring schedule<\/strong><\/p>\n\n<p>Go to <strong>Queue Posts -&gt; Publication Slots<\/strong> and delete a recurring time you no longer need. Add a replacement slot if required.<\/p>\n\n<p>Deleting a recurring slot only affects future queue choices. It does not move or cancel posts that are already scheduled.<\/p>\n\n<h3>Troubleshooting<\/h3>\n\n<h4>The queue control is missing<\/h4>\n\n<p>Confirm that the plugin is active and that you can edit the post.<\/p>\n\n<p>The control is intentionally hidden for posts that are already published or scheduled. Use WordPress' normal scheduling controls for a scheduled post, or change it back to Draft before queueing it again.<\/p>\n\n<p>Also confirm that at least one slot exists under <strong>Queue Posts -&gt; Publication Slots<\/strong>. With no slots configured, the editor displays a setup message instead of the queue actions.<\/p>\n\n<h4>\"Define publication slots before queueing posts\" appears<\/h4>\n\n<p>No recurring slots have been configured. Ask an Administrator to add at least one slot under <strong>Queue Posts -&gt; Publication Slots<\/strong>. Editors may be able to queue posts without having permission to manage slots.<\/p>\n\n<h4>\"No slots available\" appears<\/h4>\n\n<p>Confirm that slots have been configured. If they have, upcoming occurrences may already be occupied.<\/p>\n\n<p>Open <strong>Queue Posts -&gt; Queued Posts<\/strong> or the standard Posts screen and look for scheduled posts at the configured times. Reschedule an existing post, add another recurring slot, or try again later.<\/p>\n\n<h4>A slot I expected is not in the picker<\/h4>\n\n<p>Check that the expected time is still in the future according to the site timezone, that the recurring slot still exists, and that another post is not scheduled for the exact same date and time.<\/p>\n\n<p>The picker displays only the next 10 available dates, so a later occurrence may not appear yet.<\/p>\n\n<h4>\"Selected slot not available\" appears<\/h4>\n\n<p>Availability changed after you opened the picker, usually because another post took that time. Reopen <strong>Pick a slot<\/strong> to refresh the list and choose another date.<\/p>\n\n<h4>The post was queued at an unexpected time<\/h4>\n\n<p>Check the site timezone, date format, and time format under <strong>Settings -&gt; General<\/strong>. The WordPress site timezone may differ from your computer's timezone.<\/p>\n\n<p>Correct the post using the normal WordPress scheduling controls. Update the site timezone or recurring slots before queueing more posts.<\/p>\n\n<h4>A deleted slot still has a post scheduled on it<\/h4>\n\n<p>This is expected. Deleting a slot prevents later use of that weekly pattern; it does not cancel or move existing scheduled posts. Edit the affected post if you want to change it.<\/p>\n\n<h4>An Editor can queue posts but cannot manage slots or view the overview<\/h4>\n\n<p>This is expected with the default permissions. Administrators normally manage slots and view the overview, while users who can edit a post may queue that post.<\/p>\n\n<h4>A scheduled post did not publish on time<\/h4>\n\n<p>After queueing, WordPress is responsible for publication. Scheduled publishing normally depends on WP-Cron, which is triggered by site traffic unless your host provides a server cron.<\/p>\n\n<p>Check the post's date, the site timezone, and whether other scheduled WordPress tasks are also late. If they are, ask your hosting provider or site administrator to investigate the site's cron configuration.<\/p>\n\n<h4>The Queued Posts screen contains posts I did not queue<\/h4>\n\n<p>This is expected. It lists all future posts, including posts scheduled manually or by other plugins.<\/p>\n\n<h4>I cannot add a slot<\/h4>\n\n<p>Select both a weekday and a valid time. If WordPress says the slot already exists, check <strong>Current Slots<\/strong> for the same weekday and time. Exact duplicates are not allowed.<\/p>\n\n<h4>Queueing failed unexpectedly<\/h4>\n\n<p>Reload the editor and try again. The post may have been published, scheduled elsewhere, moved to Trash, or changed by another editor while the page was open.<\/p>\n\n<p>If the problem continues, confirm that WordPress normally lets you edit and schedule that post. A site administrator can then check for plugin conflicts and review the WordPress debug log.<\/p>\n\n<h4>Resources and tips<\/h4>\n\n<ul>\n<li>Plugin roadmap on <a href=\"https:\/\/github.com\/carlosinho\/queue-posts-for-publication\">GitHub<\/a><\/li>\n<li>Guides and WordPress tutorials on <a href=\"https:\/\/www.youtube.com\/@wpworkshophq\">WP Workshop<\/a> (YouTube)<\/li>\n<li>Reach the author at <a href=\"https:\/\/karol.cc\/\">Karol.cc<\/a><\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload archive or install from the official directory<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> menu in WordPress.<\/li>\n<li>Go to <strong>Queue Posts -&gt; Publication Slots<\/strong> in wp-admin to configure your publication slots.<\/li>\n<li>Queue any unscheduled post draft for publication from the post editor.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"what%20is%20a%20publication%20slot%3F\"><h3>What is a publication slot?<\/h3><\/dt>\n<dd><p>A publication slot is a reusable weekday-and-time pattern, such as Tuesday at 10:00 AM. It repeats weekly. When you queue a post, Pheasantly turns the pattern into a real future date.<\/p><\/dd>\n<dt id=\"how%20do%20i%20add%20a%20new%20publication%20slot%3F\"><h3>How do I add a new publication slot?<\/h3><\/dt>\n<dd><p>Go to <strong>Queue Posts -&gt; Publication Slots<\/strong>. Select the day of the week and time for the new slot. Click <strong>Add Slot<\/strong>.<\/p><\/dd>\n<dt id=\"can%20i%20edit%20a%20queued%20post%3F\"><h3>Can I edit a queued post?<\/h3><\/dt>\n<dd><p>Yes, you can edit a queued post at any time before it is published. The scheduled datetime stays in place unless you change it through WordPress' normal scheduling tools.<\/p><\/dd>\n<dt id=\"who%20can%20manage%20slots%20and%20queue%20posts%3F\"><h3>Who can manage slots and queue posts?<\/h3><\/dt>\n<dd><p>Users with the <code>manage_options<\/code> capability (Administrators by default) can manage publication slots and view the scheduled-post overview. Queueing a post also requires <code>edit_posts<\/code> (Editors) and permission to edit that specific post.<\/p><\/dd>\n<dt id=\"can%20i%20choose%20a%20datetime%20already%20used%20by%20another%20scheduled%20post%3F\"><h3>Can I choose a datetime already used by another scheduled post?<\/h3><\/dt>\n<dd><p>No. Occupied datetimes are not offered as available slots, and the plugin does not move or reschedule other posts.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20i%20delete%20a%20publication%20slot%3F\"><h3>What happens if I delete a publication slot?<\/h3><\/dt>\n<dd><p>If you delete a publication slot, that slot will no longer be used for future publications. Posts already scheduled for future publication keep their existing schedule.<\/p><\/dd>\n<dt id=\"what%20is%20the%20difference%20between%20%22queue%20for%20next%20slot%22%20and%20%22pick%20a%20slot%22%3F\"><h3>What is the difference between \"Queue for next slot\" and \"Pick a slot\"?<\/h3><\/dt>\n<dd><p><strong>Queue for next slot<\/strong> immediately schedules the post at the earliest available configured time. <strong>Pick a slot<\/strong> lets you choose from up to 10 upcoming available dates.<\/p><\/dd>\n<dt id=\"which%20timezone%20does%20pheasantly%20use%3F\"><h3>Which timezone does Pheasantly use?<\/h3><\/dt>\n<dd><p>Pheasantly uses the timezone configured under <strong>Settings -&gt; General<\/strong>. Check this setting before creating your schedule, especially if team members work in different timezones.<\/p><\/dd>\n<dt id=\"does%20pheasantly%20publish%20posts%20itself%3F\"><h3>Does Pheasantly publish posts itself?<\/h3><\/dt>\n<dd><p>No. Pheasantly selects a date and turns the post into a normal WordPress scheduled post. WordPress handles publication at the scheduled time.<\/p><\/dd>\n<dt id=\"is%20a%20queued%20post%20different%20from%20a%20scheduled%20post%3F\"><h3>Is a queued post different from a scheduled post?<\/h3><\/dt>\n<dd><p>No. \"Queued\" describes how its date was selected. After queueing, WordPress stores and handles it as a regular scheduled post.<\/p><\/dd>\n<dt id=\"can%20i%20manually%20reschedule%20a%20queued%20post%3F\"><h3>Can I manually reschedule a queued post?<\/h3><\/dt>\n<dd><p>Yes. Open the post and change its date and time using the standard WordPress scheduling controls. The manually selected time does not have to match a Pheasantly slot.<\/p><\/dd>\n<dt id=\"can%20i%20remove%20a%20post%20from%20the%20queue%3F\"><h3>Can I remove a post from the queue?<\/h3><\/dt>\n<dd><p>Yes. Open the scheduled post, change it back to Draft or another non-scheduled status, and save it. The date it occupied will become available again.<\/p><\/dd>\n<dt id=\"what%20happens%20when%20a%20slot%20is%20occupied%3F\"><h3>What happens when a slot is occupied?<\/h3><\/dt>\n<dd><p>Pheasantly skips that occurrence and offers the next free one. It does not displace or automatically reschedule the post already there.<\/p><\/dd>\n<dt id=\"does%20changing%20a%20slot%20move%20posts%20that%20were%20already%20queued%3F\"><h3>Does changing a slot move posts that were already queued?<\/h3><\/dt>\n<dd><p>No. Slot changes affect later queue choices only. Existing scheduled posts keep their dates until you edit them.<\/p><\/dd>\n<dt id=\"does%20the%20queued%20posts%20screen%20show%20only%20posts%20queued%20with%20pheasantly%3F\"><h3>Does the Queued Posts screen show only posts queued with Pheasantly?<\/h3><\/dt>\n<dd><p>No. It shows all future posts on the site. It does not identify which tool originally scheduled each post.<\/p><\/dd>\n<dt id=\"can%20i%20use%20both%20the%20block%20editor%20and%20classic%20editor%3F\"><h3>Can I use both the block editor and classic editor?<\/h3><\/dt>\n<dd><p>Yes. Both editors let you queue for the next slot or pick a specific upcoming slot.<\/p><\/dd>\n<dt id=\"why%20does%20the%20picker%20show%20only%2010%20dates%3F\"><h3>Why does the picker show only 10 dates?<\/h3><\/dt>\n<dd><p>The picker intentionally shows up to 10 upcoming available dates. Use <strong>Queue for next slot<\/strong> when you simply want the earliest one.<\/p><\/dd>\n<dt id=\"can%20i%20add%20more%20than%20one%20slot%20on%20the%20same%20day%3F\"><h3>Can I add more than one slot on the same day?<\/h3><\/dt>\n<dd><p>Yes. For example, Tuesday at 9:00 AM and Tuesday at 3:00 PM are separate valid slots. Only exact duplicates are rejected.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20i%20deactivate%20the%20plugin%3F\"><h3>What happens if I deactivate the plugin?<\/h3><\/dt>\n<dd><p>Already queued posts remain normal WordPress scheduled posts, so deactivating Pheasantly does not cancel them. Pheasantly's queue controls and admin screens are unavailable while it is inactive.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.40<\/h4>\n\n<ul>\n<li>Initial WordPress.org release.<\/li>\n<li>Queueing to the next slot now fails clearly when no publication slots have been configured yet.<\/li>\n<li>Duplicate weekly publication slots are rejected when adding a slot.<\/li>\n<li>Classic and block editors show a setup message when no slots exist yet, instead of broken queue controls.<\/li>\n<li>Classic editor shows WordPress' native scheduled-post success notice after queueing.<\/li>\n<li>Publication Slots admin screen to add and delete recurring weekly slots.<\/li>\n<li>Queued Posts admin screen with calendar and list views of all scheduled posts.<\/li>\n<li>Queue controls in the classic editor publish box and the block editor post status panel.<\/li>\n<li>Queue a post for the next available slot or pick from the next upcoming free slots.<\/li>\n<li>Datetimes already used by another scheduled post are not offered when queueing.<\/li>\n<li>Scheduling uses native WordPress future posts.<\/li>\n<\/ul>","raw_excerpt":"Create a recurring publishing schedule (weekly editorial calendar) and queue posts for publication in the next open slot (or pick a slot).","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/325327","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=325327"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/karol-k"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=325327"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=325327"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=325327"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=325327"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=325327"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=325327"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}