Page Guard


Page Guard uses a single URL parameter or POST variable as a means of providing a token to guard access to any page on which this plugin’s shortcode is placed. Output of alternative content can be made to occur when the token is missing or fails to match what is expected – if the token received matches the expected one, the controlled content can be revealed to the visitor.

For this version, an additional shortcode attribute “title” also allows the page title to be changed conditionally PROVIDED JAVASCRIPT IS ENABLED IN THE BROWSER (it has no effect if JavaScript is turned off!)

The shortcode to use is ‘pageguard’ – its attributes are:

tokenparam (required) -> a string value containing the name of the token URL param - e.g. 'mytoken'
eq (optional) -> a string value containing the expected value of the tokenparam - e.g. 'x34ggj45b'
ne (optional) -> as for "eq" but when used, shortcode will output content on non matching token
absent (optional) -> when absent="1", shortcode will output content on detection of missing token
title (optional) -> a string containing a page title to apply when the parent shortcode's criteria are met 

Syntax examples:

  show block on matching token -
    [pageguard param="token" eq="download"]
    Text to be output on matching token found

  show block on non match + change title
    [pageguard tokenparam="token" ne="download" title="Downloads - invalid token"]
    Error text for output when token fails to match

  show this on no token found + change title
    [pageguard tokenparam="token" absent="1" title="Downloads - missing token"]
    Error text for output when token is missing


A typical use scenario might be to control access to a downloads page. Suppose you have a PayPal “Buy Now” button on your site which allows visitors to make a payment for say, an eBook or audio recording. When setting up the button in your PayPal account you specify a URL on your site to which the visitor is returned after they’ve made payment. On this return page you’ve added a link the visitor can use to download their purchase – however, you don’t want any non paying visitors to have access to the download link(s) on the page! If you also want the page title to reflect any error conditions, you an use the “title” attribute to do this (please be aware however that this functionality depends on JavaScript being enable in the user’s browser – it disabled, “title” has no effect.)

Add a parameter to the end of the return URL (using any name and value you want) when you set up your button in PayPal e.g.


Next, add pageguard short codes for the cases you intend to handle to your return page in WordPress –

[pageguard param="token" eq="x34ggj45b" title="Title for matched token"]
Text to be output on matching token found

[pageguard tokenparam="token" ne="x34ggj45b" title="Title for failed match"]
Error text for output when token fails to match

[pageguard tokenparam="token" absent="1" title="Title for missing token"]
Error text for output when token is missing

This will correctly display the main content for the page when Page Guard detects a matching token. It also provides for the possibility of providing different error content for the page in the event of the token being incorrect or missing.


  1. To install the plugin, download the zip file and upload via the plugin interface of your WordPress site or install the plugin through the WordPress plugins screen directly.
  2. Activate the plugin through the ‘Plugins’ screen in WordPress


There are no reviews for this plugin.

Contributors & Developers

“Page Guard” is open source software. The following people have contributed to this plugin.


Translate “Page Guard” into your language.

Interested in development?

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



Added JavaScript based support for changing page title to match shortcode criteria


First implementation