Public Post Preview

Description

Share a link to anonymous users to preview a draft of a post (or any other public post type) before it is published.

Have you ever been writing a post with the help of someone who does not have access to your site and needed to give them the ability to preview it before publishing? This plugin takes care of that by generating an URL with an expiring nonce that can be given out for public preview.

Previously this plugin was maintained by Matt Martz and was an idea of Jonathan Dingman. Thanks to Hans Dinkelberg for his photo.

Usage

  • To enable a public post preview check the box below the edit post box.
  • The link will be displayed if the checkbox is checked, just copy and share the link with your friends.
  • To disable a preview just uncheck the box.

Screenshots

  • Edit Posts Page

Installation

Note: There will be NO settings page.

For an automatic installation through WordPress:

  1. Go to the ‘Add New’ plugins screen in your WordPress admin area
  2. Search for ‘Public Post Preview’
  3. Click ‘Install Now’ and activate the plugin

For a manual installation via FTP:

  1. Upload the public-post-preview directory to the /wp-content/plugins/ directory
  2. Activate the plugin through the ‘Plugins’ screen in your WordPress admin area

To upload the plugin through WordPress, instead of FTP:

  1. Upload the downloaded zip file on the ‘Add New’ plugins screen (see the ‘Upload’ tab) in your WordPress admin area and activate.

FAQ

I can’t find the option for preview links. Where is it?

The checkbox is only available for non-published posts and once a post was saved as a draft.

After some time the preview link returns the message “The link has been expired!”. Why?

The plugin generates an URL with an expiring nonce. By default a link “lives” 48 hours. After 48 hours the link is expired and you need to copy and share a new link which is automatically generated on the same place under the editor.

48 hours are not enough to me. Can I extend the nonce time?

Yes, of course. You can use the filter ppp_nonce_life. Example for 5 days:

add_filter( 'ppp_nonce_life', 'my_nonce_life' );
function my_nonce_life() {
    return 60 * 60 * 24 * 5; // 5 days
}

Or use the Public Post Preview Configurator.

Reviews

December 1, 2021
This plugin has been very helpful in sharing articles for feedback before they are published. Straightforward and easy to use. Thanks!
September 21, 2021
Preview is not working anymore (returns the notice "Error while changing the public preview status") and numerous support posts about the error are going unanswered. Seems like the plugin is not being updated. Too bad since it used to work great.
July 17, 2021
This is one of the very few plugins I install on literally every single site I work on. Absolutely invaluable.
Read all 63 reviews

Contributors & Developers

“Public Post Preview” is open source software. The following people have contributed to this plugin.

Contributors

“Public Post Preview” has been translated into 23 locales. Thank you to the translators for their contributions.

Translate “Public Post Preview” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

2.9.3 (2021-03-12):

  • Compatibility with WordPress 5.7.
  • Create a fresh preview URL when enabling public preview.
  • Add check for possibly undefined PHP “superglobals”. Props @waviaei.

2.9.2 (2020-10-03):

  • Fix saving of preview status without a previous Ajax request.

2.9.1 (2020-07-25):

  • Improve HTTP status codes for expired/invalid preview links.

For more see CHANGELOG.md.