PukiWikiへ「attachref.inc.php」と「areaedit.inc.php」プラグインの導入


投稿日:2011年7月29日
  • 0
  • 0
  • 1



PukiWikiの弱点である書式のとっつきにくさをなくして、誰でも手軽に編集に参加してもらえるようにする2つのプラグイン

画像をアップロードするのにPukiWikiの方法だと手間がかかるため、簡単に画像をアップロードできるように変更。
合わせてアップロードした人の名前も追加できるようにした。


まずはワンクリックでアップロード出来るようにする。

attachref.inc.php」をつかう。
このプラグインは事前にファイルサイズを指定することができるので不特定多数の人間がファイルをアップロードしてもデザインが崩れる心配がないので非常に便利です。

導入にあたり変更点は33行目あたり

// max file size for upload on script of PukiWiki(default 1MB)
define('MAX_FILESIZE',1000000);// 管理者だけが添付ファイルをアップロードできるようにする
define('ATTACHREF_UPLOAD_ADMIN_ONLY',FALSE); // FALSE or TRUE
// アップロード/削除時にパスワードを要求する(ADMIN_ONLYが優先)
define('ATTACHREF_PASSWORD_REQUIRE',FALSE); // FALSE or TRUE

容量が1MBだと今時のデジカメでは小さいので2MBへ変更。誰でも投稿できるようにパスワードも要らないようにした。

// max file size for upload on script of PukiWiki(default 1MB)
define('MAX_FILESIZE',2048000);// 管理者だけが添付ファイルをアップロードできるようにする
define('ATTACHREF_UPLOAD_ADMIN_ONLY',FALSE); // FALSE or TRUE
// アップロード/削除時にパスワードを要求する(ADMIN_ONLYが優先)
define('ATTACHREF_PASSWORD_REQUIRE',FALSE); // FALSE or TRUE

合わせて、このプラグインはデフォルトのプラグインである「attach.inc.php」を読み込んでいるので、そちらも合わせて変更する。

// Max file size for upload on PHP (PHP default: 2MB)
ini_set('upload_max_filesize', '1M');// Max file size for upload on script of PukiWikiX_FILESIZE
define('PLUGIN_ATTACH_MAX_FILESIZE', (1024 * 1024)); // default: 1MB

// 管理者だけが添付ファイルをアップロードできるようにする
define('PLUGIN_ATTACH_UPLOAD_ADMIN_ONLY', TRUE); // FALSE or TRUE

// 管理者だけが添付ファイルを削除できるようにする
define('PLUGIN_ATTACH_DELETE_ADMIN_ONLY', TRUE); // FALSE or TRUE

ファイルサイズと管理者以外もアップロード可能にするため下記のように変更

// Max file size for upload on PHP (PHP default: 2MB)
ini_set('upload_max_filesize', '2M');// Max file size for upload on script of PukiWikiX_FILESIZE
define('PLUGIN_ATTACH_MAX_FILESIZE', (2048 * 2048)); // default: 1MB

// 管理者だけが添付ファイルをアップロードできるようにする
define('PLUGIN_ATTACH_UPLOAD_ADMIN_ONLY', FALSE); // FALSE or TRUE

// 管理者だけが添付ファイルを削除できるようにする
define('PLUGIN_ATTACH_DELETE_ADMIN_ONLY', FALSE); // FALSE or TRUE

続いてアップロードした人の名前もワンクリックで追加できるように「areaedit.inc.php」を導入。
凍結したページでも決められた部分だけは編集するようにするプラグインだ。
このプラグインの素晴らしいところは「preview:**」という引数を使えることだ。この引数を使うことで編集時にどこを編集するのか視覚的にわかるようになる。

導入にあたり、デフォルトでは編集用ボタンが[e]という非常に分かりづらい文字なので[編集]に変更。

 '$1 のページは存在しません',
'btn_name'       => '[編集]',
'btn_name_collect' => '収集',
'btn_name_inline'=> '[e]',

30行あたりの[e]を下記のように[編集]に変更。

 '$1 のページは存在しません',
'btn_name'       => '[編集]',
'btn_name_collect' => '収集',
'btn_name_inline'=> '[編集]',

2つのプラグインを組み合わせてこのように記述。

|LEFT:345|LEFT:345|c
|&attachref(,zoom,280x280){画像をここにアップロード};|&attachref(,zoom,280x280){画像をここにアップロード};|
|写真提供:&areaedit(preview:2){};|写真提供:&areaedit(preview:2);|

2つ組み合わせることでWiki文法に疎い人でも気軽に編集・ファイルのアップデートが出来るようになる。
改良の余地があるとすれば、画像をアップロードした後に変更や削除まで出来ればベストだが…。
あくまで簡易的なものなのでこれで良しとする。

サンプル「ネオンテトラ
画像をここにアップロード」という記述の部分が今回のプラグインを使った部分です。



現在のページを共有する



現在のページに関連する記事


おすすめの記事


コメントを残す

コメントは認証制のため、すぐには反映されません。

プログラミングに関する質問は「日本語でプログラミングの悩みを解決するQ&Aサイト sukegra」をご利用ください。