Private Page Forbidden

Private Page Forbidden

Weston Ruter

This plugin is developed at Shepherd Interactive
for the benefit of the community. No support is available. Please post any questions to the support forum.

Instead of serving a 404 Not Found error with the 404.php template, send a 403 Forbidden error and set $wp_query->is_403 and load 403.php if it exists.

Provides a filter forbidden_redirect which if results in a non-empty filtered value will result in the user being redirected if attempting to visit a forbidden page; the default value is "" (no redirect).

Useful with a filter which selectively prevents a private post from being forbidden, so that the page will not show up in the navigation and won’t be included in XML Sitemaps, for example.

function my_filter_private_posts($posts){     if(is_singular() && $posts[0]->post_status == 'private'        && #Now optionally allow/disallow based on user session:        in_array($_SERVER['REQUEST_URI'], (array)@$_SESSION['allowed_private_uris']))     ){         header('Cache-Control: private'); #Prevent proxies from caching this private page         $posts[0]->post_status = 'publish';     }     return $posts; } add_filter('posts_results', 'my_filter_private_posts');

2009-09-28: 0.2

  • Initial release

Reviews

0 out of 5 stars

  • Version: 0.2
  • Last updated: 15 years ago
  • Active installations: 0
  • WordPress version: 2.7
  • Tested up to: 2.8
  • PHP version: false