カテゴリ | |
サマリ | 相対パス指定で画像を表示したい |
バージョン | 1.4.6 |
投稿者 | st |
状態 | 質問 |
投稿日 | |
Root
- img
- wiki
- ...
という構造でWikiを設置しました。
Wikiを編集していく上で画像を必要とします。
1.編集者に勝手にアップロードさせたくない。
2.アップロードする画像のほとんどは最初から用意でき大量にあるため、FTPでアップロードしてしまいたい。
3.画像はWiki以外のコンテンツでも使いたい
ということで、Wikiの親ディレクトリにimgディレクトリを作成し、そこに画像をアップロード。
その画像をWikiから参照するという方法をとりたいのです。
#ref(URL)
を使えば、絶対パスにて画像を表示することができるのは知っているのですが、ミラー化も視野に入れているため、相対パスでの指定をしたいところです。
InterWikiを使えばできるのか?と思ったのですが、うまくいきません。
[./img/ Img]
としてInterWikiを設定し、
[[Img:icon.gif]]
とすれば、リンクは作成されるのですが、画像は表示されるわけではないようで…
なにか解決策はありませんか?
- 他に方法があるのかも知れないけど、img.inc.phpの“is_url($url)”判定をなくせば相対パスで画像が表示できるはず。インラインでも使いたい場合はブロック型(convert)を元に少しインライン用に変更すればできるかと。副作用があっても責任は持てませんが。 -- 0
- InterWikiやrefでの対応は質問箱/2056、質問箱/2539を見る限り仕様との兼ね合いで難しそうです。 0さんのコメントにあるとおり対応するなら#imgでしょう。現状、imgのrefに対するアドバンテージがありませんし、丁度良いのかもしれません。 質問箱/2443のように出力結果を相対指定で出力したいのでなければis_url判定をなくす方法でなく、$scriptを補う方法もアリかもしれません -- にぶんのに
- やはりそんなところですか。imgのインライン側に書いたのですが、プラグインとして公開は微妙ですね。既存のブロック側の動きとは挙動が異なってしまうので。img2とかという名前にするのが流儀なんでしょうか? -- st
- define('PLUGIN_IMG_FQDN', true);のように定義して、使い分けを可能にし、デフォルトで相対不可(定義例ではtrue)に設定しておけば挙動が異ならないような気がします。大きな変更を行なったのであれば別ですが。 -- 0
- 公開するのであれば、既存プラグインと名前がかぶらないようにした方がいいかも知れませんね。上記のように定義で挙動が選択可能であれば、拡張版として置き換えても良い(img.inc.php として上書き)と付け足しておくと良いかもしれません。現状と同じ動作/拡張動作が選択可能ということで。定義で分岐しても挙動が異なるようであれば、自分の好きな名前で公開すると良いでしょう。 -- 0
- refプラグインを改造して、相対タグ指定できるようにしたpluginを作っています。いかがでしょうか? 改造もとがrefなので、refのパラメーターが使用できます。ただしファイル名指定方法に少しクセがありますので、説明書きはお読みください。自作プラグイン/imgr.inc.php -- takayan