概要
社内のリソース管理では、誰にでも扱いやすいという理由でpukiwikiを利用していますが、ページコンテンツが増えてくると編集がメチャクチャ面倒!という問題に直面しまして、何か言い方法はないかと探していたところ、見出しごとに編集できるプラグインがあることを知り早速入れてみました。
Pukiwiki 1.4.7
paraedit.inc.php 0.8
手順
- リンク切れ・消失 自作プラグイン – taru memoからparaedit_8.inc.zip.tgzをダウンロード
- 解凍したparaedit.inc.phpの文字コードを(ご自分の環境に合わせてね)EUCに変更
- lib/pukiwiki.phpに
12
include_once
(PLUGIN_DIR .
'paraedit.inc.php'
);
$post
[
"msg"
] = _plugin_paraedit_parse_postmsg(
$post
[
"msg_before"
],
$post
[
"msg"
],
$post
[
"msg_after"
]);
を追加
- skin/pukiwiki.skin.phpの
1
pkwk_common_headers();
の直前に
1234// ParaEdit
if
(exist_plugin(
'paraedit'
)) {
$body
= _plugin_paraedit_mkeditlink(
$body
);
}
を追加
- lib/convert_html.phpのHeadingクラスの
12345
function
toString()
{
return
$this
->msg_top .
$this
->wrap(parent::toString(),
'h'
.
$this
->level,
' id="'
.
$this
->id .
'"'
);
}
を
123456function
toString()
{
$paraedit_flag
= (preg_match(
"/^content_1_/"
,
$this
->id)) ?
' paraedit_flag=on'
:
''
;
return
$this
->msg_top.
$this
->wrap(parent::toString(),
'h'
.
$this
->level,
" id=\"{$this->id}\"$paraedit_flag"
);
}
に置換する
- paraedit.inc.phpを/pluginにコピー
- paraedit.inc.phpを
01020304050607080910
?省略?
// 編集リンクの文字列・スタイルを指定
// %s に URL が入る
define(_EDIT_LINK,
'<div style="text-align: right; font-size: x-small; padding: 0px; "><span class="removed_link" title="%s">[edit]</span></div>'
);
// 編集リンクの挿入箇所を指定
// <h2>header</h2> の時、$1:<h2>, $2:header, $3:</h2> となるので $link を好きな場所に移動
// (例)
// define(_PARAEDIT_LINK_POS, '$1$2$link$3'); // </h2>の前
define(_PARAEDIT_LINK_POS,
'$link$1$2$3'
);
// <h2>の前
// define(_PARAEDIT_LINK_POS, '$1$2$3$link'); // </h2>の後ろ
?省略?
を
01020304050607080910111213?省略?
// 編集リンクの文字列・スタイルを指定
// %s に URL が入る
//define(_EDIT_LINK, '<div style="text-align: right; font-size: x-small; padding: 0px; "><span class="removed_link" title="%s">[edit]</span></div>');
define(_EDIT_LINK,
'<span class="removed_link" title="%s"></span>'
);
// 編集リンクの挿入箇所を指定
// <h2>header</h2> の時、$1:<h2>, $2:header, $3:</h2> となるので $link を好きな場所に移動
// (例)
define(_PARAEDIT_LINK_POS,
'$1$2$link$3'
);
// </h2>の前
// define(_PARAEDIT_LINK_POS, '$link$1$2$3'); // <h2>の前
// define(_PARAEDIT_LINK_POS, '$1$2$3$link'); // </h2>の後ろ
?省略?
目次がまたソースコードのhタグ拾ってるけど、、、放置しますね。