拙著「WordPress Web開発逆引きレシピ」が発売されました。
WordPressの様々なカスタマイズについて、逆引きの形式で取り上げています。
PHP 7.0での動作確認も行っています。
文字列を1文字ずつ出力するプラグイン(その1)
Blogのステータスとして、エントリー数などを表示するようにしている方をよく見かけます。
そういった数値を、画像で表示することができれば、見た目がより良いのではないかと思います。
そこで、文字列を1文字ずつ出力するプラグインを作ってみました。
タグの値等を1文字ずつ出力し、その前後に他の文字列を付加することができます。
例えば、「123」という値を、「<img src="1.gif"><img src="2.gif"><img src="3.gif">」のように出力することができます。
1.プラグインのダウンロードとインストール
このプラグインは、以下のページからダウンロードすることができます。
プラグインの継続的な開発やサポートのために、プラグインをご利用された方は、ドネーション(寄付)を行っていただけると幸いです。
ドネーションの方法は、こちらのページをご参照ください。
また、このプラグインの他にも、いくつかのプラグインを配布しています。
配布中のプラグインは、Movable Type Plugin Directoryのページをご参照ください。
Movable Typeのプラグイン開発等のドキュメント「Movable Type Developer's Guide Volume 1」も販売しています。
ご自分でプラグインを作ってみたい方に、ぜひお勧めしたい一冊です。
詳細は特設ページをご覧ください。
ダウンロードしたファイルに、「SplitString.pl」というファイル名をつけて保存します。
そして、そのファイルをMovable Typeの「plugins」ディレクトリにアップロードします。
2.表示したい値を変数に代入する
まず、MTSetVarBlockタグを使って、表示したい値を変数に代入します。
例えば、Blogのエントリー数を、「000123」のように6桁の数値にして出力したい場合だと、テンプレートの中に以下のようなタグを入れます。
<MTSetVarBlock name="entry_count"><$MTBlogEntryCount sprintf="%06d"$></MTSetVarBlock>
3.変数の値を1文字ずつ出力する
次に、変数の値を1文字ずつ出力します。
このプラグインをインストールすると、「MTSplitString」というコンテナタグが追加されます。
このタグは、変数の値を1文字ずつ出力するものです。書き方は以下のようになります。「変数名」の部分には、MTSetVarBlockタグで指定した変数名を入れます。
<MTSplitString name="変数名"> 変数の値を1文字ずつ出力する処理 </MTSplitString>
また、MTSplitStringタグのコンテナタグの中では、「MTSplitStringChar」というタグを使うことができます。
このタグは、順に出力される1文字を表するものです。
4.例
例として、Blogのエントリー数を「000123」のような6桁の数値にし、それを画像で出力する方法を取り上げます。
Blogの出力先ディレクトリの中に、「counter」というディレクトリを作り、そこに数字の画像をアップロードしたものとします。
また、それぞれの数字の画像は、「0.gif」「1.gif」のように、「数字.gif」のファイル名になっているものとします。
この場合、以下のようにタグを組み合わせることで、エントリー数を画像で出力することができます。
<MTSetVarBlock name="entry_count"><$MTBlogEntryCount sprintf="%06d"$></MTSetVarBlock> <MTSplitString name="entry_count"><img src="<$MTBlogURL$>counter/<$MTSplitStringChar$>.gif" alt="<$MTSplitStringChar$>" /></MTSplitString>