[pmwiki-users] Redirecting pages to external URLs
Petko Yotov
5ko at 5ko.fr
Thu Dec 31 10:30:36 CST 2009
On Thursday 31 December 2009 15:42:51, Bernard Bel wrote :
> This feature is the page redirection to an external URL. On my sites we
> have taken the habit of writing significant acronyms between square
> brackets so that they automatically point at a specific page. For
> instance, [[CNAM]] links to the "CNAM" page and this page has an external
> redirection to
> http://fr.wikipedia.org/wiki/Caisse_nationale_d%27assurance_maladie
>
> This has the immense advantage that (1) we do not need to repeat external
> URLs and (2) any change in an external URL can be updated by editing the
> unique page that contains it.
You can add a custom "extredirect" markup like this :
(:extredirect http://external.site.com/dir/file.html#anchor :)
Adding the following code to local/config.php will enable it :
## (:extredirect:)
if(!@$_POST['preview']) {
Markup('extredirect', '<include', '/\\(:extredirect\\s+(\\S.*?):\\)/ei',
"Redirect(\$pagename, trim(PSS('$1')))");
$SaveAttrPatterns['/\\(:extredirect\\s.*?:\\)/i'] = ' ';
}
For security reasons, this is NOT recommended on open public wikis - any wiki
page could be redirected to external (ad/porn/phishing) websites.
Also note that when you save the page, you'll be immediately sent out of the
wiki. Re-editing the page requires to type the ?action=edit url in your
browser. These may be confusing and hard for less experienced users.
For these reasons, I wouldn't recommend enabling external redirects, if you
can just place a link on the redirect page. Visitors will have an additional
step to go out - a single link is not hard to click. You can always edit the
page to update a broken link. It is possible to edit it from within the wiki.
You can also have multiple links for the visitor, like :
Liens externes :
* [[http://www.ameli.fr/ | Site institutionnel]]
* [[http://fr.wikipedia.org/wiki/CNAM | Page de CNAM sur Wikipédia]]
Pages de ce site possedant un lien vers cette page :
(:pagelist link={*$FullName}:)
This may even fit nicely in the Category feature, where, in pages, you just
use a link [[!CPAM]] instead of [[CPAM]].
> To make things clear I would not migrate to a wiki that does not permit
> external redirection. (MoinMoinWiki, which I almost opted for, does it
> nicely.)
Hmmm... :-)
> A quick search on the web led me to these suggestions:
>
> http://www.mail-archive.com/pmwiki-users@pmichaud.com/msg00372.html
>
> However none of them does a single external redirection from a single page.
They may be easier to bulk-create, to control and to manage in the long run.
They're definitely safer.
> In addition, I don't understand how a call of a page might open
> "local/Site.Redirect.php". I guess that some extra PHP code is required in
> "local/config.php"s.
If the file exists, local/Site.Redirect.php is included automatically in
pmwiki.php, when a visitor goes to the page [[Site/Redirect]].
Petko
More information about the pmwiki-users
mailing list