ファイルをリンクする箇所がありましたが、日本語のファイルのパスがあり、普通にファイルのリンクを貼ると上手く行かなかったのでインターネットで調べ、
ここのサイトを参考にしましたが、ファイル名やフォルダ名に空白が入っている場合の対処方法が書かれていましたが、1番目はpukiwiki1.4.4以前のバージョンの対処方法で、2番目はpukiwiki1.4.5のバージョンですが、上手く行きそうだと思いましたが、2階層目以降の日本語のフォルダのリンクが上手く行かないと書かれてあり、対処方法も書かれてありましたが、pukiwiki1.4.5のバージョンのファイル名やフォルダ名が空白の場合の対処方法が書かれておらず、対処方法がややしそうだったので、ほかの方法をインターネットで調べてみるとInterWikiを使えばいいと書かれていました。
まず、Wikiのフォルダ内のlibフォルダのmake_link.phpの405行目の
(?:(?:https?|ftp|news):\/\/|\.\.?\/)[!~*'();\/?:\@&=+\$,%#\w.-]*を
(?:(?:https?|ftp|news|file):\/\/|\.\.?\/)[!~*'();\/?:\@&=+\$,%#\w.-]*にし、
803行目の
if (preg_match('/\[(' . '(?:(?:https?|ftp|news):\/\/|\.\.?\/)' .を
if (preg_match('/\[(' . '(?:(?:https?|ftp|news|file):\/\/|\.\.?\/)' .にし、
820行目辺りの
case 'asis': /* FALLTHROUGH */
case 'raw' : // Truly as-is
break;
の下に
case 'file': // Local File Link
if (LANG == 'ja') {
switch(UA_NAME . '/' . UA_PROFILE){
case 'Firefox/default':
$param = rawurlencode(mb_convert_encoding($param, 'UTF-8', SOURCE_ENCODING));
break;
default:
break;
}
}
break;
を付け加えます。
InterWikiNameのページで
拡張InterWikiNameの一番下に
-[file:///$1 LocalLink] file
を付け加えます。(要求しようとするURLへのWikiNameの挿入位置を $1 で指定することができます)
実際に使用するには[[LocalLink:ファイルの場所]]と記述し、表示したい文字を変えたい場合は[[表示したい名前>LocalLink:ファイルの場所]]と書かれてありましたが、実際に使用する場合に少しややこしいと思いました。
私は統合する前のポータルサイトでも日本語のファイルのパスをリンクをしていると思い、日本語のファイルのパスのリンクを探したらありました。
統合する前のポータルサイトのWikiのフォルダ内のlibフォルダのmake_link.phpをコピーして統合するポータルサイトのWikiのフォルダ内のlibフォルダに貼り付け、日本語のファイルのリンクを貼ったら上手く行きましたが、しばらく経ってからファイル名やフォルダ名に空白が入っている場合、上手く行かない事に気が付き、InterWikiの方法を使ったら上手く行きました。
ポータルサイトを使っている方達にはInterWikiの方法を使ってもらうように統合するポータルサイトのトップページのお知らせにWikiで日本語のファイルのリンクを貼ってもらう場合の書式を書きました。
PukiWiki/1.4/ちょっと便利に/ローカルファイルへのリンクも張りたい
http://pukiwiki.sourceforge.jp/dev/?PukiWiki%2F1.4%2F%A4%C1%A4%E7%A4%C3%A4%C8%CA%D8%CD%F8%A4%CB%2F%A5%ED%A1%BC%A5%AB%A5%EB%A5%D5%A5%A1%A5%A4%A5%EB%A4%D8%A4%CE%A5%EA%A5%F3%A5%AF%A4%E2%C4%A5%A4%EA%A4%BF%A4%A4ローカルファイルにリンクを貼る
http://lunatear.net/archives/000988.htmlPR