pcomment.inc.phpを開き、まずは投稿フォームの文章側inputをtextarea化する。127行目辺りの
$comment = '<input type="text" name="msg" size="' .
PLUGIN_PCOMMENT_SIZE_MSG . '" required />';
を、以下に書き換え
任意の数値は最小の方の文字数制限。このWikiでは荒らし対策として2にしている
これだと一行一文字を繋げる遊びが出来なくなるのでまあ一長一短。あなたはお好みで数値を入れてもいいし入れなくてもいい
$comment = '<textarea name="msg" minlength="任意の数値" maxlength="' .
PLUGIN_PCOMMENT_SIZE_MSG . '" required></textarea>';
次にその少し下にあるinput群を少し弄る。EOD;直前の
<input type="hidden" name="count" value="$count" />
$radio $title $name $comment
<input type="submit" value="{$_pcmt_messages['btn_comment']}" />
</div>
EOD;
を、以下に書き換え
なおここはフォームの配置に関わる所なのでそのままでもいい、という場合は触れなくてもよし
textarea化するならコメントだけ別の行にした方が使いやすいのでは?という判断で変更している
<input type="hidden" name="count" value="$count" />
$radio $title $name
<input type="submit" value="{$_pcmt_messages['btn_comment']}" />
$comment
</div>
EOD;
次に209行目辺りの
$msg = str_replace("\x08" . 'MSG' . "\x08", $msg, PLUGIN_PCOMMENT_FORMAT_STRING);
$msg = str_replace("\x08" . 'NAME' . "\x08", $name, $msg);
$msg = str_replace("\x08" . 'DATE' . "\x08", $date, $msg);
を、以下に書き換え
n{7,}の部分は必要な処置+荒らし対策。一定以上の空白改行を無視する役割
この場合、文章中の連続空白改行は5行まで許される。6行分以上続くとその部分の空白改行が無効化。指定値-2が上限と思っておけばいい
$msg = str_replace("\x08" . 'MSG' . "\x08", preg_replace("/\n{7,}|\n/", "&br;" , $msg), PLUGIN_PCOMMENT_FORMAT_STRING);
$msg = str_replace("\x08" . 'NAME' . "\x08", $name, $msg);
$msg = str_replace("\x08" . 'DATE' . "\x08", $date, $msg);
最後に終わりの方にあるラジオボタン用の記述を変更
// Add radio buttons
if ($reply)
$comments = preg_replace('/<li>' . "\x01" . '(\d+)' . "\x02" . '(.*)' . "\x03" . '/',
'<li class="pcmt"><input class="pcmt" type="radio" name="reply" value="$2" tabindex="$1" />',
$comments);
を、以下に書き換え
今回配布のCSS的にはここが一番重要。ここをきっちり書き換えないと追加部分が正常に機能しない
ここの書き換えが終わった後に配布スキン用CSSの最後にあるadjust - pcommentのコメントアウトを外そう
// Add radio buttons
if ($reply)
$comments = preg_replace('/<li>' . "\x01" . '(\d+)' . "\x02" . '(.*)' . "\x03" . '/',
'<hr><li class="pcmt"><label for="pcmt_$1" class="pcmt"><input id="pcmt_$1" type="radio" name="reply" value="$2" tabindex="$1" /></label>',
$comments);