forumプラグインでツールチップ表示がおかしい問題
【forumプラグイン】geeklog/public_html/forum/index.php
41行に追加
require_once($_CONF['path'] . 'plugins/forum/functions.inc');
forum_mb_wordwrapを使えるようにするための措置
983行
$topicinfo .= wordwrap(strip_tags(mb_substr($record['comment'],0,$CONF_FORUM['contentinfo_numchars'])),$CONF_FORUM['linkinfo_width'],"<br />n");
↓
$topicinfotmp = strip_tags(mb_substr($record['comment'],0,$CONF_FORUM['contentinfo_numchars']));if(strlen ($record['comment']) > $CONF_FORUM['contentinfo_numchars']){
$topicinfotmp .= "...";
}
$topicinfo .= mb_ereg_replace("rn", "<br />", forum_mb_wordwrap($topicinfotmp, $CONF_FORUM['linkinfo_width'], "n"));
関連記事
【forumプラグイン】
geeklog/plugins/forum/functions.inc
523行
$subject = wordwrap($A['subject'],40,"<br>");
↓
$subject = forum_mb_wordwrap($A['subject'],$CONF_FORUM['linkinfo_width'],"<br />");1017行に追加
$post_limit = $CONF_FORUM['sideblock_numposts'];
1279行あたり
$lastpostinfo = wordwrap(strip_tags(substr($A['comment'],0,$CONF_FORUM['contentinfo_numchars'])),$CONF_FORUM['linkinfo_width'],"<br />n");
↓
$lastpostinfotmp = strip_tags(mb_substr($A['comment'],0,$CONF_FORUM['contentinfo_numchars']));if(strlen ($A['comment']) > $CONF_FORUM['contentinfo_numchars']){
$lastpostinfotmp .= "...";
}
$lastpostinfo = mb_ereg_replace("rn","<br />",forum_mb_wordwrap($lastpostinfotmp,$CONF_FORUM['linkinfo_width'],"n"));
1289行
$lastpostinfo = wordwrap(strip_tags(substr($lastcomment,0,$CONF_FORUM['contentinfo_numchars'])),$CONF_FORUM['linkinfo_width'],"<br />n");
↓
$lastpostinfotmp = strip_tags(mb_substr($lastcomment,0,$CONF_FORUM['contentinfo_numchars']));if(strlen ($lastcomment) > $CONF_FORUM['contentinfo_numchars']){
$lastpostinfotmp .= "...";
}
$lastpostinfo = mb_ereg_replace("rn","<br />",forum_mb_wordwrap($lastpostinfotmp,$CONF_FORUM['linkinfo_width'],"n"));
1482行に追加(最後)
function forum_mb_wordwrap($string, $width, $break) { $return = "";
$list = preg_split("/n/", $string);#改行で分解
$n = $width; # 改行させる文字数
foreach($list as $line){ #foreachで一行ずつ処理させる
$len = 0;#以下元の部分のまま
for($i = 0; $i < mb_strlen($line); $i += $len){
for($j = 1; $j<=$n; $j++){
$wk = mb_substr($line, $i, $j);
if(mb_strlen($wk) >= $n) break;
}
$len = mb_strlen($wk);
$return .= $wk. "<br />";
}
}
return $return;
}
関連記事
