Home > 演習:MT:MD5グローバルフィルターの作成

演習:MT:MD5グローバルフィルターの作成

  • Posted by: maRk

Movable Typeのテンプレートタグの出力をMD5にするフィルターの実装をやってみたのでその備忘です

Movable Type の出力をMD5にかえるグローバルフィルターは以下のエントリが有名です。

これをconfig.yamlファイルを使ってMT5な実装にしてみたものです。

基本的なところは以下のドキュメントが参考となります。

config.yamlファイル

config.yamlファイルに記述したコードです。

  • プラグインのID : MD5
  • パッケージ : MD5::Tags
  • 提供するモディファイア: md5
  • ルーチンのディレクトリ:Tags
  • サブルーチン名:_hdr_md5
id: MD5
name: MD5 Globale Modifier
version: 1.0
description: MD5
author_name: maRk
author_link: https://labs.markdiary.com/

tags:
    modifier:
        md5: $MD5::MD5::Tags::_hdlr_md5

Tags/Tags.pm ファイル

サブルーチンのファイルの中身 Digest::MD5モジュールを使用

package MD5::Tags;
use strict;
use Digest::MD5 qw(md5_hex);

sub _hdlr_md5 {
    my ($str,$arg, $ctx) = @_;
    return $str if $arg !=1;
           $str = md5_hex($str);
    return $str;
}
1;

ダイナミックパブリッシング用

modifier.md5.phpへの記述 md5()関数を使用

<?php
    function smarty_modifier_md5($str, $args) {
        if ($args !=1) {
            return $str;
        }
        return md5($str);
    }

フォルダの構成について

[plugins]
              cofig.yaml
           [php]
                modifier.md5.php
           [lib]
              [MD5]
                Tags.pm

使うとき

<mt:EntryPermalink md5="1">

Comments:0

コメントする

Trackbacks:0

Home > 演習:MT:MD5グローバルフィルターの作成

Search

Feeds

Return to page top