文字列の先頭をけずったり、後ろをけずったり、任意の位置で切り出したりするMovableTypeプラグインを作ってみました。
Perlで言うところの、substr関数、JavaScript なら substring関数のようなことが出来ます。
上記リンクからファイルをダウンロードして、アーカイブを解凍してください。
trimx2y.pl を MT のプラグインディレクトリに設置(パーミッションは 0604とか)。
文字列を返すMTタグに trimx2y="x-y" という属性を追加して使用します。
3文字目以降を切り出します。
<$MTEntryTitle trimx2y="3-"$>
10文字目までを切り出します。
<$MTEntryTitle trimx2y="-10"$>
5文字目から15文字目までを切り出します。
<$MTEntryTitle trimx2y="5-15"$>
以下のような場合は、全ての文字列が取り出されます。
<$MTEntryTitle trimx2y="0-"$> 0は無効
<$MTEntryTitle trimx2y="-0"$> 0は無効
<$MTEntryTitle trimx2y="9-2"$> 開始位置の方が大きい
<$MTEntryTitle trimx2y="a-b"$> 数字以外は無効
<$MTEntryTitle trimx2y="abc"$> 無効な指定
日本語文字列に対応していて、バイト数ではなく、文字数で数えます。
プログラマーの感覚ではなく、一般の感覚で数えるので、文字列の先頭位置を1文字目と数えます(先頭を0とするsubstr関数やsubstring関数とは異なります)。
文字列を超える位置を指定すると、文字列がなくなるので注意してください。
例えば、<$MTEntryTitle$> が abcdefghijklmn という14文字を返すとして
<$MTEntryTitle trimx2y="15-25"$>とすると、何も表示されなくなります。
また、数字、ハイフンは必ず半角文字で指定してください。
空白などが入ると無効扱いとなり、通常通りの文字列(トリミングなしの文字列)を返します。
以上、よろしければ、ご利用ください(。・_・。)ノ

初めまして. まるちぷらいと申します.
TrimX2Y ありがたく使わせていただきました.
カテゴリ一覧を体裁よく任意の順に並べるのに使用しています.
「xxxxxxカテゴリ名」のように、カテゴリ名の先頭に 6 桁の数字を付けて並ぶようにしています.
カテゴリ名表示の部分で、trimx2y="7-" と指定すれば、数字部分が飛んでるくれるものと解釈したのですが、これだとカテゴリ名の最初の一文字もとばされてしまいます.
trimx2y="6-" とするとうまくいきます.
ちょっと感覚と合わないのですが、私の理解が間違っているでしょうか?