MT4で、trim_toの制限文字数超えたときだけ...を付ける

結構3点リーダーをつけたい時ってあって今までは表示時にPHP側で処理してたけど
京の路さんで紹介されていたのでこれからはこれでやろ~
修正するのは
lib/MT/Template/ContextHandlers.pm
MT3.3では
sub _fltr_trim_to {
my ($str, $val, $ctx) = @_;
require MT::I18N;
$str = MT::I18N::substr_text($str, 0, $val) if $val < MT::I18N::length_text($str);
$str;
}
で、MT4では
sub _fltr_trim_to {
my ($str, $val, $ctx) = @_;
$str = substr_text($str, 0, $val) if $val < length_text($str);
$str;
}
となっているところを
sub _fltr_trim_to {
my ($str, $val, $ctx) = @_;
$str = substr_text($str, 0, $val)."..." if $val < length_text($str);
$str;
}
というように修正。
この記事をツイートする














このページへのリンクタグ