TopMovable Typeプラグイン > Movable Type でショートコード
News
各種ブログテンプレート
2010年2月 4日

エントリー本文

Movable Type でショートコード

Posted at February 4,2010 2:55 AM
Category:[プラグイン]
Tag:[, ]

Movable Type で WordPress のショートコードっぽいことを行う記事がありましたので、紹介します。

Code Monkey Ramblings - "Shortcodes" in Movable Type/Melody

なお、本格的にショートコードを利用したい場合は、藤本壱さんのショートコードプラグインをおすすめします。

The blog of H.Fujimoto - ShortCodeプラグイン(Movable Type 5用)

さて、ショートコードを実現するためには簡単なプラグインを作成します。また、MTEntryBody タグに mteval モディファイアを予め設定しておく必要があります。

1.記事中に著作権表示をする

記事中に、MTCopyrightNotice タグを記述することで、著作権表示に置き換えるショートコードを作成します。

次の2つのファイルを作成します。

config.yaml

id: CopyrightShortcode
key: CopyrightShortcode
name: CopyrightShortcode
description: Provides a simple function that returns a copyright notice
tags:
    function:
        CopyrightNotice: CopyrightShortcode::_hdlr_copyright_notice

CopyrightShortcode.pm

package CopyrightShortcode;
use strict;
sub _hdlr_copyright_notice {
    return "Copyright 2010 John Smith. All rights reserved."
}
1;

作成後、各ファイルを次のように配置します。「MT_DIR」はアプリケーションディレクトリです。

MT_DIR/plugins/CopyrightShortcode/config.yaml
MT_DIR/plugins/CopyrightShortcode/lib/CopyrightShortcode.pm

2.記事中に引用文を表示する

記事中に、MTPullQuote タグを記述することで、タグの内容を blockquote タグで括ります。またMTPullQuote タグブロック内のテンプレートタグも評価します。

次の2つのファイルを作成します。

config.yaml

id: PullQuoteShortcode
key: PullQuoteShortcode
name: PullQuoteShortcode
description: Provides a simple function that returns a copyright notice
tags:
    block:
        PullQuote: PullQuoteShortcode::_hdlr_pullquotes

CopyrightShortcode.pm

package PullQuoteShortcode;
use strict;
sub _hdlr_pullquotes {
    my ($ctx, $args, $cond) = @_;
    my $out = $ctx->slurp($args, $cond) or return '';
    return "<blockquote class='pullquote'>$out</blockquote>";
}
1;

作成後、各ファイルを次のように配置します。

MT_DIR/plugins/PullQuoteShortcode/config.yaml
MT_DIR/plugins/PullQuoteShortcode/lib/PullQuoteShortcode.pm

以上です。リッチテキストではテンプレートタグが実体参照されるので、利用の際は注意が必要です。

Posted by yujiro ReTweet This!
関連記事
この記事を読んだ人はこんな記事も読んでいます
人気エントリー
Hatena Hot Entries
Hatena Entries
トラックバックURL


コメントする
greeting

*必須



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

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

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

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

Now loading...
Introduction
Entries of this Category
Recent Entries
Recent Comments
Recent Trackbacks
QRcode

現在停止中です
携帯電話からこのQRcodeを撮影することで携帯用URLを取得することができます

URI for cellular phones
ギターに入った猫
Styles
Font Size
Default
For defective color vision
Gray Scale
RGB Color
Search this site

このブログをメールで購読する by:FeedBurner

loading ...
Categories
Monthly Archives
BlogPeople
Syndicate this site
FeedBurner(RSS1.0/RSS2.0/Atom)
Counter
これまでのアクセス
クリエイティブ・コモンズ・ライセンス
Powered by
Movable Type 4.261