エントリーの文字数を表示する

エントリーの文字数を表示する

Posted at August 13,2006 1:27 AM
Tag:[Entry, MovableType, Plugin]

エントリーの文字数を表示するMovable Type でエントリータイトルやエントリー本文等の文字数を表示する方法です。
Ogawa::memoranda さんのプラグインを利用することで、全角・半角をそれぞれ1文字として計算して表示することができます。

1.プラグインのダウンロード

下記のページよりプラグインをダウンロードします。

OgawaCodeMT-I18Nプラグイン

アーカイブを解凍して、中にある mt-i18n.pl を plugins ディレクトリにアップロードします。特に設定項目はありません。

/plugins/mt-i18n.pl

2.エントリー本文の文字数を表示

下記のコードをテンプレートの <MTEntries>~</MTEntries> の間(エントリー・アーカイブはどこでもいいです)に設定します。

HTMLマークアップをカウントする場合

<MTLengthText><$MTEntryBody$></MTLengthText>

HTMLマークアップをカウントしない場合

<MTLengthText><$MTEntryBody remove_html="1"$></MTLengthText>

とします。

上記の例では記事の文字数が表示されるだけですので、

<MTLengthText><$MTEntryBody remove_html="1"$></MTLengthText>文字です。

と適当な説明をつけ加えましょう。

3.エントリータイトル・エントリー本文・追記の文字数を全て合計して表示

下記のように JavaScript を利用します。エントリータイトル・エントリー本文・追記の文字数を個別に取得し、その合計を JavaScript で表示します。

<script type="text/javascript">
var length = <MTLengthText><$MTEntryTitle remove_html="1"$></MTLengthText>+<MTLengthText><$MTEntryBody remove_html="1"$></MTLengthText>+<MTLengthText><$MTEntryMore remove_html="1"$></MTLengthText>;
document.write('この記事は ' + length + ' 文字です');
</script>

PHPを利用するのであれば

<?php
$length = <MTLengthText><$MTEntryTitle remove_html="1"$></MTLengthText>+<MTLengthText><$MTEntryBody remove_html="1"$></MTLengthText>+<MTLengthText><$MTEntryMore remove_html="1"$></MTLengthText>;
print "この記事は $length 文字です";
?>

という具合です。

関連記事
zenback
人気エントリー
トラックバックURL


コメント

こんにちは。

貴サイトを利用させてもらっています。
いつもありがとうございます。

質問をさせていただきたいのですが
内容が近いこちらの記事にコメントさせていただきます。

該当のブログ記事中に同ブログ記事のURLを自動取得したいのですが
何か良い方法はありますでしょうか?

クリック投票CGIを設置したのですが、クリック先のURLを設定しなければならず、
クリックしてリンクをクリックする動作は完了するが、どこにも移動せずにすむには
どうしたらよいか思案しておりました。

お手数をおかけいたしますが何か良いアイデアがございましたら
ご教示くださいますようお願い申し上げます。

[1] Posted by fuku : May 3, 2008 4:09 PM


記事のリンクは
パーマリンクというのですね。

先ほどの質問は上記を設定して
解決しました。

お騒がせしました。

これからもお世話になります。
どうぞ宜しくお願いいたします。

[2] Posted by fuku : May 3, 2008 6:34 PM

先ほどの質問は
自分の記事のリンク

パーマリンク

で解決しました。

お騒がせいたしました。

これからもお世話になります。
どうぞ宜しくお願いいたします。

[3] Posted by fuku : May 3, 2008 6:36 PM

>fukuさん
こんにちは。
ご返事遅くなり申し訳ありません。
ご質問の件、自己解決されたようで良かったです。
ではでは!

[4] Posted by yujiro logo : May 7, 2008 5:22 PM
コメントする
greeting

*必須

*必須(非表示)


ご質問のコメントの回答については、内容あるいは多忙の場合、1週間以上かかる場合があります。また、すべてのご質問にはお答えできない可能性があります。予めご了承ください。

太字イタリックアンダーラインハイパーリンク引用
[サインインしない場合はここにCAPTCHAを表示します]

コメント投稿後にScript Errorや500エラーが表示された場合は、すぐに再送信せず、ブラウザの「戻る」ボタンで一旦エントリーのページに戻り(プレビュー画面で投稿した場合は、投稿内容をマウスコピーしてからエントリーのページに戻り)、ブラウザをリロードして投稿コメントが反映されていることを確認してください。

コメント欄に(X)HTMLタグやMTタグを記述される場合、「<」は「&lt;」、「>」は「&gt;」と入力してください。例えば「<$MTBlogURL$>」は「&lt;$MTBlogURL$&gt;」となります(全て半角文字)