
內容簡介
Page Guard Redirect(頁面守衛重定向)使用單一 URL 參數或 POST 變量作為一種提供令牌的方式,以防止訪問此外掛中放置其简码(shortcode)的任何頁面 - 當令牌不匹配預期值時可以進行重定向(另一個選項是當令牌匹配時重定向 - 也包括在其中,以獲得完整性。)
要使用的簡碼是“pgredirect”,其屬性為:
tokenparam(必填):一個字符串值,包含令牌 URL 參數的名稱 - 例如 'mytoken'(我的令牌)
tokenvalue(必填):包含 tokenparam 期望值的字符串值 - 例如 'x34ggj45b'
redirectURL(必填):包含要重定向到的 URL 的字符串值(您可以使用現有頁面作為重定向的目標 - 或者對於許多配置,將此設置為不存在的頁面將使 WordPress 重定向到默認的 404“未找到”頁面。)
redirectWhen(可選):-> 當=“1”時,在找到匹配時重定向,否則默認為在不匹配時重定向
用法示例:
在不匹配時重定向 (default) -
[pgredirect tokenparam="mytoken" tokenvalue="1234abcd" redirecturl="http://my.redirurl.com/notfound" /]
在匹配時重定向 (將 redirectwhen="1" 添加為屬性) -
[pgredirect tokenparam="mytoken" tokenvalue="1234abcd" redirectwhen="1" redirecturl="http://my.redirurl.com/notfound" /]
使用方法
一個典型的使用場景可能是防止訪問下載頁面。假設您在您的網站上使用了 PayPal 的“立即購買”按鈕,使訪問者可以支付比如電子書或音頻錄音等的款項。在設置了按鈕後,您在您 PayPal 帳戶中指定一個訪問您網站的 URL,在他們支付完毕後將返回此頁面。在這個返回頁面中,您添加了一個訪問者可以用來下載他們購買的物品的鏈結,但您不希望任何未支付的訪問者會憑空找到此頁面!
當您在 PayPal 中設置此按鈕時,在返回的 URL 的末端添加一個参数(使用任何您想要的名稱和值)例如:
"http://your.wordpress.site/download/?dltoken=Xc345Fd77"
接下來,在 WordPress 的返回頁面中添加一個 pgredirect 的簡碼 -
[pgredirect tokenparam="dltoken" tokenvalue="Xc345Fd77" redirecturl="http://your.wordpress.site/notfound" /]
如果 Page Guard Redirect 檢測到 URL 參數中缺少預期的令牌,或值與簡碼的 tokenvalue 屬性不匹配,這將導致重定向。
外掛標籤
開發者團隊
原文外掛簡介
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" /]
Usage
A typical use scenario might be to prevent 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 find the return page by chance!
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.
"http://your.wordpress.site/download/?dltoken=Xc345Fd77"
Next, add a pgredirect short code to your return page in WordPress –
[pgredirect tokenparam="dltoken" tokenvalue="Xc345Fd77" redirecturl="http://your.wordpress.site/notfound" /]
This will cause a redirect if Page Guard Redirect detects either the lack of the expected token in the URL parameter, or a value which doesn’t match the one in the short code’s tokenvalue attribute.
