サマリ | 添付ファイルをiframe内表示する |
---|---|
リビジョン | 0.2 |
対応バージョン | 1.4.6 |
投稿者 | h1suzuki |
投稿日 | 2006-06-10 (土) 23:13:08 |
PukiWikiに添付されたファイルはリンクや張り込み画像として表示できますが、iframe内に表示するプラグインを作りました。 PukiWikiにぺたぺた色々貼りたいけど、wikiで書き直すのは面倒。Officeで作ったhtmlや昔のHPのhtmlファイル、べたテキストをそのままwikiページに貼り付ける事ができます。(他に同様のプラグインありましたらご容赦ください) ライセンスはGPL2です。
以下のソースをファイルにコピペして、PukiWikiのpluginディレクトリに iframe_ref.inc.php という名前で保存してください。read権がついている必要があります。
<?php ////////////////////////////////////////////////////////////////////// // iframe_ref.inc.php // by h1suzuki // 添付のファイルを <iframe>...</iframe> 内に表示する。 // [更新履歴] // 2006-06-06 version 0.1 [初版] // 2006-06-10 version 0.2 widthなどのオプションを扱えるようにする define('PLUGIN_IFRAME_REF_USAGE', '#iframe_ref(fname,[width,height,mwidth,mheight,border])'); define('PLUGIN_IFRAME_REF_MIME_CHECK',0); function plugin_iframe_ref_convert() { global $vars; if (func_num_args()<1) return PLUGIN_IFRAME_REF_USAGE; $args = func_get_args(); // sanity checks. $filename = UPLOAD_DIR.encode($vars[page]).'_'.encode($args[0]); if (!is_readable($filename)) return htmlspecialchars($args[0]). ' is not found.'; if (PLUGIN_IFRAME_REF_MIME_CHECK && extension_loaded('mime_magic')) { if (is_readable('mime_magic.magicfile')) { if (!preg_match('/html\/.*$/', mime_content_type($fname))) return ' is not a html file.'; } } $w = "90%"; $h = "300"; $mw = "0"; $mh = "0"; $b = "0"; if (!is_null($args[1]) && ereg("[0-9]{1,3}%?",$args[1])) $w = $args[1]; if (!is_null($args[2]) && ereg("[0-9]{1,3}%?",$args[2])) $h = $args[2]; if (!is_null($args[3]) && ereg("[0-9]{1,2}",$args[3])) $mw = intval($args[3]); if (!is_null($args[4]) && ereg("[0-9]{1,2}",$args[4])) $mh = intval($args[4]); if (!is_null($args[5]) && ereg("[0-1]",$args[5])) $b = intval($args[5]); // echo "w=",$w,",h=",$h,",mw=",$mw,",mh=",$mh,",b=",$b; require_once(PLUGIN_DIR.'ref.inc.php'); $param = plugin_ref_inline($args[0],"noicon","noimg"); $param = str_replace("<a href=", "<iframe width=\"".$w."\" height=\"".$h."\" ". "frameborder=\"".$b."\" ". "marginwidth=\"".$mw."\" marginheight=\"".$mh."\" ". "lang=\"ja\" src=",$param); $param = str_replace("</a>","</iframe>",$param); return $param; } ?>
#iframe_ref(添付ファイル名[,width,height,mwidth,mheight,border])
PukiWikiのページに添付したファイル名を指定します。
添付ファイルをインラインで表示する iframe ウィンドウの幅を指定します。70%など割合指定が可能です。
添付ファイルをインラインで表示する iframe ウィンドウの高さを指定します。30%など割合指定が可能です。
添付ファイルをインラインで表示する iframe ウィンドウ内のマージン幅を指定します。
添付ファイルをインラインで表示する iframe ウィンドウのマージン高さを指定します。
添付ファイルをインラインで表示する iframe ウィンドウのボーダーを0で非表示、1で表示します。
tenpu.htmlを添付ファイルとしてページに添付後、
#iframe_ref(tenpu.html)
もしくは
#iframe_ref(tenpu.html,100%,300,0,0,1)
などで iframe ウィンドウ内に添付ファイル tenpu.html の内容がインライン表示されます。