pukiwikiプラグイン/jumpto のバックアップソース(No.6)

お名前:

#author("2017-08-19T12:40:51+09:00","-","-")
表記、そんな感じのものを作ったので、一応公開しておきます。~

*プラグイン概要 [#sef7708c]

コンテンツ内の外部サイトへのリンクを置換し、リダイレクトページへ飛ばすPukiWiki用プラグインです。~
もともとは他の方が作成されていたもので、友瀬による部分的な改造を行っていました。

このプラグインの本来の目的は、誰もが編集できるwikiにおいて「信頼できない」「悪意ある」サイトへのリンクを勝手に作られてしまうと危険なので、wikiサイト以外へのリンクについては一度中間ページに移動してURLを確認できるようにする、というものです。~
今回の友瀬版では、外部サイトであっても「信頼できる」サイトへは直接飛ぶように指定できるようにしています。

また、オリジナルではEUC環境でいまいちな動作だったため、そこも修正してあります。~
※友瀬のEUC環境でしか動作確認していません:UTF環境でおかしかったら、プラグイン内の「EUC対応」部分の1行を削除してください。

-オリジナル: teanan.homeip.net の元ページ
--http://hirotea.daa.jp/pukiwiki/index.php?%BC%AB%BA%EE%A5%D7%A5%E9%A5%B0%A5%A4%A5%F3%2Fjumpto.inc.php
-隠居小屋.netさん改造版。
--http://www.inkyogoya.net/pukiwiki/jumpto.html

*インストール方法 [#xb4bc2b7]
+本ページに添付されている下記ファイルをダウンロードし、pukiwiki の pluginフォルダにおいてください。
--[[jumpto.php.inc>http://tomose.dynalias.net/junk/index.php?plugin=attach&pcmd=open&file=jumpto.inc.php&refer=pukiwiki%A5%D7%A5%E9%A5%B0%A5%A4%A5%F3%2Fjumpto]]
+スキンに埋め込んでおくタイプのプラグインです。~
上記サイトを参考にして、スキンを書き換えてください。


*使い方 [#hd49432b]

スキンに埋め込んでおくタイプのプラグインなので、wiki入力上で指定する内容はありません。

プラグイン内 plugin_jumpto_checkURL()において、信頼できるURLを記載することで、それを対象外にできます。~
例えば以下のように書くことで、Twitterへのリンクは中間を挟むことなく指定できます。
 array_push( $safelist, "https://twitter.com/");



*技術的な話。 [#c2e96c5e]

元のプラグインでは「自分自身のURL であるか否か」だけをチェックしていたところ、複数の「安全なサイト」を登録して比較できるようにしただけです。

なおこの結果、転送先にある記事に起因して「さらに他のサイトに転送」されるリスクは発生します:例えば TwitterのURLを「信頼できる」ようにした結果、Twitter内の「変な記事」に起因しておかしなことになるリスクはあります。それはご理解の上、使用してください。

**気になったこと [#t2bd83be]
元プラグイン、pukiwikiの comment プラグインと干渉してそう:textarea が含まれていると、そこでhtml記述が狂っているように見えます。~
詳しく調べてはないですが・・・


*コメント [#p7a8c88f]
ご意見などがあれば。
#comment2(below)
お名前: