差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

次のリビジョン
前のリビジョン
reference:id_2ch [2010/03/02] – 作成 administratorreference:id_2ch [2022/03/12] (現在) – 外部編集 127.0.0.1
行 1: 行 1:
 +====== 2ch風のIDを表示するプラグイン ======
 +  * 2ちゃんねる風のIDを表示するプラグインです。
 +  * IPアドレスをもとにIDが記号化されます。
 +  * 同じIPアドレスでも、本家2chのIDとは異なります。
 +  * keywordの部分を書き換えて使用してください。
 +
 +===== インストール方法 =====
 +  - ファイルをダウンロードする。
 +  - ダウンロードした「ID_2ch.pl」ファイルを、Movable Typeの「plugins」ディレクトリにアップロードします。
 +  - Movable Typeのシステム・メニューのプラグイン管理画面を表示し、プラグインの一覧に「ID_2ch」が表示されていることを確認してください。
 +  - これで設置完了です。
 +
 +===== 使い方 =====
 +  - コメントのテンプレートに<$MTCommentIP ID_2ch="1"$>と書き込みます。
 +
 +===== カスタマイズ =====
 +  - ソースのkeywordを任意の文字列に変更してください。
 +
 +===== ダウンロード =====
 +
 +<file php ID_2ch.pl>
 +#
 +# 2ch風のIDを表示するプラグイン
 +#
 +# Copyright (c) 2010 initial-t
 +#
 +# 使い方:<$MTCommentIP ID_2ch="1"$>
 +#
 +
 +
 +package MT::Plugin::ID_2ch;
 +use strict;
 +use Digest::MD5 qw(md5_hex);
 +use MT::Template::Context;
 +
 +my $plugin = new MT::Plugin();
 +$plugin->name( 'ID_2ch' );
 +$plugin->description( '2ch風のIDを表示します。' );
 +$plugin->version( '1.00' );
 +$plugin->author_name( 'initial-t' );
 +$plugin->author_link('http://gika.s206.xrea.com/');
 +$plugin->plugin_link('http://gika.s206.xrea.com/reference:index');
 +$plugin->doc_link('http://gika.s206.xrea.com/reference:id_2ch');
 +
 +MT->add_plugin ($plugin);
 +MT::Template::Context->add_global_filter(ID_2ch => \&ID_2ch);
 +
 +sub ID_2ch {
 +    my ($str,$flag,$ctx) = @_;
 + my ($str_md5, $key_md5, $id_md5, $id);
 +    if($flag){
 + $str_md5 = substr(md5_hex($str), 0, 30);
 + $key_md5 = substr(md5_hex("keyword"), 0, 10);
 + $id_md5 = md5_hex($str_md5.$key_md5);
 + $id = substr(_base64($id_md5), 0, 8);
 + return $id;
 +    }
 +    return $str;
 +}
 +
 +sub _base64 {
 +    require MIME::Base64;
 +    return MIME::Base64::encode_base64(@_, '');
 +}
 +
 +1;
 +</file>