このサイトでは右側にコメント投稿を表示させていますが、
コメント頂いたエントリーのタイトルが長いと2列になり見た目が悪くなってしまいます。
そこで表示させる文字数を設定して、その文字数をオーバーすると「...」で表示させるよう設定できます。
(hiro作成HPのMAXBETでは実装済み)
1../lib/MT/Template/ContextHandlers.pm の317行目
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;
}
を
sub _fltr_trim_to {
my ($str, $val, $ctx) = @_;
require MT::I18N;
my $attachment = "";
$attachment = "..." if $val < MT::I18N::length_text($str);
$str = MT::I18N::substr_text($str, 0, $val) if $val < MT::I18N::length_text($str);
$str .= $attachment;
$str;
}
に書き換えてアップロード。
あとは
<$MTEntryTitle trim_to="12"$>
という書き方をするだけで省略表示が可能です。
(12の部分を変更することで表示文字数を変えれます)
文字コードがUTF-8のみ対応のブログパーツに読み込ますXMLファイルがShift-JISの場合の文字コード変換プラグインです。
(文字コードの変換ならUTF-8以外でもOK)
hiroが運営しておりますMAXBETのブログカレンダーのXML読み込みがShift-JISでうまくいかなかったためUTF-8に変換するプラグインを導入することにより正常動作しました。
まずOgawa::Memorandaさんのところで配布されているMT-I18Nプラグインをダウンロードします。
次に mt/plugins/ ディレクトリの中にアップロードします。(通常のプラグインと同様です)
そして、エンコード( 文字コード変換 )したい部分を
<MTEncodeText from="<$MTPublishCharset$>" to="utf8">
:
エンコードしたい部分
:
</MTEncodeText>
MAXBETのサイトではそれでもうまく変換が出来なかったため
<MTEncodeText from="Shift-JIS" to="utf8">
:
エンコードしたい部分
:
</MTEncodeText>
と記載することによりうまく動作しました。
・imagesフォルダ内の「1.gif」などの画像をランダムで表示させてそれぞれのリンクに飛ばす。
<SCRIPT Language="JavaScript">
<!--
function randomJump()
{ theURL = new Array();
theURL[0] = "http://hogehoge.com";
theURL[1] = "http://hogehoge2.com";
theURL[2] = "http://hogehoge3.com";
theURL[3] = "http://hogehoge4.com";
ImageCount = 4; // 画像の最大枚数
num = Math.floor(Math.random() * ImageCount);
document.write("<a href='"+theURL[num]+"' target='_blank'>");
document.write("<img src='images/"+num+".gif' border='0'></a>");
}
// -->
</SCRIPT>
・画像を表示させたい箇所に下記を記載
<SCRIPT Language="JavaScript">
<!--
randomJump();
// -->
</SCRIPT>