mail-entryを使ってモブログ投稿をすると、デフォルトの状態では画像に自動で回り込みを設定することができません。設定画面の「画像を表示させるHTML文:」が上手く機能してくれず(私の使い方が下手なのか、使い方が分かってないのか;;)、文字の位置は画像の上か下かのどちらかになってしまいます。後から編集すればいくらでも位置変更できるけど、どうせなら投稿した時点で文字の回りこみや画像の装飾が完了していたら便利ですよね。
で、mail-entryのcgiスクリプトをちょいと改造。
まずはmail-entryの設定画面での「画像処理に関する設定」で「画像に対しての本文の位置」に「bottom」を選んで設定送信します。
次にmail-entry.cgiの254行目あたりから、↓の下のように赤の部分を追加。
# HTMLの作成
if ($sumfilename eq "") {
# サムネイルを作成しなかった時
$comment .= img({
src=>$imgpath."/".$filename,
width=>$width,
height=>$height});
}
else {
# サムネイルを作成した時
$comment .= a({
href=>$imgpath."/".$filename,
target=>"_blank" },
img({
src=>$imgpath."/".$sumfilename,
width=>$sw,
height=>$sh }));
}
↓
# HTMLの作成
if ($sumfilename eq "") {
# サムネイルを作成しなかった時
$comment .= img({
src=>$imgpath."/".$filename,
width=>$width,
height=>$height,
class=>"moblog" });
}
else {
# サムネイルを作成した時
$comment .= a({
href=>$imgpath."/".$filename,
target=>"_blank" },
img({
src=>$imgpath."/".$sumfilename,
width=>$sw,
height=>$sh,
class=>"moblog",
border=>"0" }));
}
あと、433行目あたりから赤字で書いた<br />を削除。
# top指定
$comment = $mail_body."<br />\n".$comment;
} elsif (lc($comment_position) eq "bottom" || 1) {
# bottom指定
$comment .= "<br />\n".$mail_body;
}
最後にMTの管理画面を開いてstyles-site.cssに以下の内容を追記します。
.moblog {
border-left:1px solid #999999;
border-top:1px solid #999999;
border-right:1px solid #999999;
border-bottom:1px solid #999999;
padding: 6px 6px 6px 6px;
margin: 0px 10px 10px 0px;
float: left;
}
これで写真と文字の間に余計な改行が入らず、すっきりと画像の横に文字が回りこみます。上の設定だと、画像の右に文字が回りこみ、画像には6pxの余白とその周りにグレーの枠線が付きます。回り込みのスタイルや画像の装飾は各自のお好みでご自由にどうぞ~。