Here is what I came up with. Seems to be working. If anyone has suggestions for improvement, I’m all ears:
// Redirect links to future posts to Coming Soon page.
add_action('wp','redirect_coming_soon_posts', 0);
function redirect_coming_soon_posts(){
global $wpdb;
if ($wpdb->last_result[0]->post_status == "future" &&
$wpdb->last_result[0]->post_date_gmt != '0000-00-00 00:00:00' &&
! is_admin() ):
session_start();
$_SESSION['next_post_id'] = $wpdb->last_result[0]->ID;
wp_redirect( '/coming-soon', 301 );
exit();
endif;
}
function sess_start() {
if (!session_id()) {
session_start();
}
}
add_action('init','sess_start');
Related Posts:
- redirect deleted / drafted pages
- Some users getting a 404 when previewing draft posts/pages
- How to customize file path for 404 redirection in php?
- WordPress Migration: Getting 404 Errors: Only Home Page works
- External page integrated into WordPress returns a 404 error
- WordPress Theme’s 404.php not found, server defaults to Apache’s own 404 page
- get_the_ID() gives notice in 404 page
- How to open the 404 page in the Theme Customizer preview?
- Feed 404 Errors
- 404 when fetching image from wp-content/uploads/
- REST API: No route was found matching the URL and request method
- WordPress REST API 404
- Changing Site Address (URL) causes 404
- Detect 404 before headers are sent
- In wordpress I am manipulation 404 response. I want to give the response before 404 error is given to google
- 404 error on homepage when using Nginx proxying to Apache
- Non “WordPress” pages/code getting 404 error
- 404 error on all pages but homepage
- Where is the best part to hijack or catch a potential 404
- page not found in Chrome, but found in Firefox
- Why does my WordPress show a 404 message for 403 forbidden directories?
- Moved to new server, all pages work EXCEPT home page (page not found)
- Using a custom field value to redirect away from a 404 page
- High CPU usage on 404 errors
- How to fix “failed to set referrer policy: The value ‘ ‘ is not one of…”?
- “Lost password” page triggers 404
- Check if post is in draft or pending review?
- 404 to 301 – Fixing old links
- How do I bypass WordPress 404 handling?
- $error = 404 after caught add_rewrite_rule
- How do I go about fixing this apparently messed up upgrade?
- WordPress Stats keeps showing non-existent post as a top post?
- WP Rest API not working
- What does do_action(‘admin_init’); does actually?
- Form in WordPress : 404
- Why is my Javascript console showing a 404 error for a file called “null” on a clean WordPress install?
- Why Runtime service worker (runtime-service-worker.js) is being loaded, but can’t be found?
- Non-existent page returns code 200
- WP is redirecting instead of going to 404
- Conditional for 404 page not work
- Nginx with WordPress not showing template 404 for certain file types
- post parameter ‘name’ 404 error
- Intermittently missing pages and posts in WordPress
- Getting a 404 in Debugger for example.com/wp-admin/Array?
- oEmbed 404 errors when trying to use embed block
- Custom Post Type Draft Preview Goes to 404
- Intercept 404 and try to serve another content if exists?
- 404 after moving localhost wp to server
- Intermittent 404 errors, rewrite rules, and BBPress
- How do I show the WP admin error page?
- WordPress takes too long to show 404 error on images (on LEMP stack)
- WordPress Post – On Post – 404 Page Not Found
- How to find out which function is causing a 404
- Template redirect template loaded, but the header 404
- Prevent WordPress from interpreting a subfolder?
- Getting 404s on New Pages
- How can I send an email in my plugin?
- All pages after level 1 showing 404 after WordPress migration plugin – how to fix?
- index2.php in root causing 404 error
- Why I get File Not Found (404 error) when the file is actual there?
- WP_DEBUG must be on, otherwise edit post or page will show 404 error
- Getting “404 page not found” error when i access to my Login page
- Virtual robots.txt missing
- Moved from Blogger to WordPress, however I can only see the Google 404 page
- Custom 404 page for dashboard
- wp-tinymce.php 404
- WordPress.org support topics returning 404 [closed]
- Display child pages on parent page: 404 message overrules shortcode in page
- How can I prevent non-existing wordpress pages from getting redirected to home page
- Incorrect url for sharing blog on linkedin [closed]
- Catch 404 errors in nested installations
- Getting 404 error on my wp rewrite error
- WordPress 404 Page displaying on a sub directory that has it’s own 404 page
- 404 error on dynamic stylesheet creation
- Why do I have a weird rendering issue only on 404.php caused by wp_nav_menu?
- make wordpress log errors in apache log file
- How to fix: “The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.”
- Page not found (404 Error) even if the page exists?
- WordPress refuses to read the .htaccess file and gives a 404 for sub-pages
- How to recover WordPress Adress(URL)
- Custom JSON feed rewrite
- My wordpress website does not show 404 page and results in http 500 error
- wp-json Returns 404 Upon Plugin Activation
- Page not found – Wamp green, phpmyadmin working
- WordPress 404 errors for old plugin files via Google Bot
- URL Change – Check if Post Exists Before 404
- When I remove get_header() from 404 page, my css doesnt work
- WPML – 404 Error when I try to pass GET parameters in my “different languages in directories” installation
- How to use wp_footer() on a 404 page?
- How to direct user to actual 404 page when a check is false in single.php?
- Sub Domain’s Pages return 404
- Is the 404 page the same as “well this is embarrasing” page?
- Google 404 Errors
- WordPress Installation in Subfolder only works half
- Page not found if mod_cache_disk is active
- Why aren’t links clickable on my 404 error page? [closed]
- 404 error when calling php
- full blog working fine but post-new.php throwing 404
- Blank TinyMCE and 404 errors on assets
- Link to WP-CONTENT not working