Page Guard Redirect 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 - redirection can be made to occur when the token fails to match what is expected (the alternative, i.e. redirect when token DOES match - is also included for completeness.)
The shortcode to use is 'pgredirect' - its attributes are:
tokenparam (required): a string value containing the name of the token URL param - e.g. 'mytoken'
tokenvalue (required): a string value containing the expected value of the tokenparam - e.g. 'x34ggj45b'
redirectURL (required): a string value containing the URL to redirect to (you can use an existing page as the target for the redirection - alternatively, for many configurations, setting this to a non existent page will make WordPress redirect to the default 404 "not found" page.)
redirectWhen (optional): -> when = "1", redirects when match is found, otherwise defaults to redirect on non-match
Syntax examples:
redirect on non match (default) -
[pgredirect tokenparam="mytoken" tokenvalue="1234abcd" redirecturl="
http://my.redirurl.com/notfound" /]
redirect on match (add redirectwhen="1" as an attribute) -
[pgredirect tokenparam="mytoken" tokenvalue="1234abcd" redirectwhen="1" redirecturl="
http://my.redirurl.com/notfound" /]
1.1
Added a filter to enforce use of classic editor when editing any page containing a pgredirect short code. The new block (Gutenberg) editor was found to run pgredirect's code rather than ignoring it, resulting in a redirect away from the page needing editing.
1.0
First implementation