かたつむりくんのWWW

ローカルで自分がcommitしたのにアイコンが表示されなかった件

どうでもいいといえばどうでもいいんですけど、Tower とか Bitbacket とかのコミット履歴の画面で、ローカルの Git で自分が commit したのに、アイコンが表示されないのがずっと気になってたんです、というか、アイコンどうやって設定するのかなーって。

今まで色々とググってみても情報が出てこなかったんですけど、やっと見つけました。

続きを読む

MTAppjQuery 0.25.1 リリース - バグフィックス

Movable Type 5 の管理画面をjQueryでカスタマイズしやすくするプラグイン「MTAppjQuery」の ver.0.25.1 をリリースしました。バグフィックスです。

変更点は以下の通りです(詳細はこちら)。

  • mtappVarsなどに「encode_js="1"」を追記しました。

スカイアークシステム方川さんにコメントで教えていただきました。ありがとうございました!

アップデートが必要なファイルは、以下の2つです。

  • plugins/MTAppjQuery/MTAppjQuery.pl
  • plugins/MTAppjQuery/lib/MTAppjQuery/Callbacks.pm

これらの差分ファイルも置いておきますので、こちらだけ差し替えていただければOKです。

プラグイン全体のダウンロードは以下からお願いします。

はじめての DynamicMTML #06 - MTSearchEntries (2) 基本的な使い方

前回は、ブログ記事を動的に検索する MTSearchEntries タグの説明をしました。

今回は、MTSearchEntries の基本的な使い方を紹介します。なお、以下の記事のテンプレートは「ブログ記事アーカイブ」テンプレートでの利用を想定しています。

続きを読む

はじめての DynamicMTML #05 - MTSearchEntries (1) 動的にブログ記事を検索する

今回は、DynamicMTML を利用して、動的にブログ記事を検索する MTSearchEntries の使い方を紹介します。

MTSearchEntries

MTSearchEntries は、target モディファイアで指定したカラムに query モディファイアで指定した文字列を含むエントリーを出力するブロックタグです。MTSearchEntries タグ内では、MTEntry系のファンクションタグが使えます。

MTSearchEntries タグで利用できるモディファイアは以下の通りです(詳細は後述します)。

query : 検索文字列
blog_id : ブログID
include_blogs : 対象とするブログIDを列記(カンマ区切り)または
"all" "children" "siblings"が指定可能です。
exclude_blogs : 対象外とするブログIDを列記(カンマ区切り)します。
target : 検索対象とするカラムを指定します。
operator : SQLの条件式を記載します。デフォルトはLIKEです。
class : entry(デフォルト)もしくはpage
category : カテゴリ名
category_id : カテゴリID
tag : タグ
status : 数字もしくは'*'(すべて)
sort_by : 表示順に指定するカラム名
sort_order : 表示順(descendもしくはascend)
lastn : 表示数
offset : オフセット値(何件目から読み込むか)
unique : 同じテンプレート内で使用したMTSearchEntries
ブロックで出力したエントリーを除いて出力します。
not_entry_id : IDを指定した単一のエントリーを除いて出力します。

README.ja.md at master from alfasado/DynamicMTML - GitHub

詳細に入る前に、まずはサンプルを見てみましょう。

続きを読む

MTAppjQuery 0.25 リリース - MTAppKeyboardShortcut を追加

Movable Type 5 の管理画面をjQueryでカスタマイズしやすくするプラグイン「MTAppjQuery」の ver.0.25 をリリースしました。内容は以下の通りです。

  • ブログ記事やウェブページ、コメントなどの一覧画面で、キーボードショートカットの「j, k, x」が使えるようになりました。Gmail のキーボードショートカットの j, k, x とほぼ同様の動きをします。
  • mt-static/MTAppjQuery/lib 内にあった jQselectable ディレクトリを削除しました。ご利用される場合は作者のサイトからダウンロードしてください。

アップデートが必要なファイルは、

  • plugins/MTAppjQuery ディレクトリ
  • mt-static/plugins/MTAppjQuery/js/MTAppjQuery.js
  • mt-static/plugins/MTAppjQuery/css/MTAppjQuery.css

となります。

ダウンロードは以下からお願いします。

続きを読む

はじめての DynamicMTML #04 - ログイン状態で分岐する MTIfLogin

今回は、DynamicMTML を利用して、ユーザーのログイン状態によって表示を変える方法を紹介します。

この方法を利用すれば、会員専用サイトを構築したり、会員のみに見せる特別なコンテンツを設置したりすることができます。

続きを読む

はじめての DynamicMTML #03 - スタティックパブリッシングで DynamicMTML を使う書き方

今回は、いよいよ DynamicMTML を Movable Type のテンプレートで使う方法を紹介します。

利用するテーマは、デフォルトテーマの「クラシックウェブサイト」と「クラシックブログ」です。また、特に説明がない限り、テンプレートの [公開] は「スタティック」に設定してあるものとします。

DynamicMTML をスタティックパブリッシングで利用する

DynamicMTML は、ページにアクセスがあったときに、そのファイルに含まれている MT タグを動的に展開してその結果をユーザーに返すものです。

したがって、スタティックパブリッシングのテンプレートで DynamicMTML を利用するには、テンプレートを再構築する際に、部分的に MT タグを展開しないで MT タグを残したままの状態でページを生成する必要があります。

DynamicMTML には、これを実現するために、主に次の2つの正式な方法と、1つの裏技的な方法があります。

  1. MTDynamicMTML というブロックタグでテンプレートを囲む方法
  2. MTML というファンクションタグで MT タグ自体を出力する方法
  3. replaec する裏技的な方法

続きを読む

はじめての DynamicMTML #02 - .htaccess と .mtview.php の役割

前回の記事で、DynamicMTML のインストールまで完了しました。

DynamicMTML を有効にすると、ウェブサイト/ブログのサイト・パス直下に「.htaccess」と「.mtview.php」という2つのファイルが生成されます。今回は、このファイルの役割を見てたいと思います。

続きを読む

はじめての DynamicMTML #01 - 準備とインストール

僕は Movable Type の「再構築」が好きです。「Love 再構築」という名前の Xtalk 動かしているくらいですw サイトに来てくれたユーザーにスタティックなファイルを返すだけ、というのは、サイト運営側のおもてなしの一つだと思っています。

しかし、運営側にとって「再構築」という作業に何分も時間がかかるというのはデメリットであることも事実です。この気持ちもよく分かります。この再構築時間をできるだけ短くするというのは、Movable Type を使ってサイトを構築するWeb制作者の腕の見せ所でもあるのかもしれません。

また、スタティックなファイルだと、デバイスやユーザーごとに表示を変えにくいこともあるかもしれません。

そんな Movable Type の弱点(?)を克服するかのように現れたのが、Alfasado Inc. が公開している DynamicMTML というプラグインです。

今日から、自分の勉強も兼ねて、この DynamicMTML について記事を書いていきたいと思います。なお、DynamicMTML の詳しいドキュメントは以下のページに載っています。

続きを読む

「MT関係書籍 + 緑の太陽ピンバッジ」3.11を忘れない。ミニキャンペーン

先日、宮城県出身の友達から「緑の太陽」というものを教えていただきました。

「緑の太陽」には、2011年3月11日東日本大震災による甚大な被害から学んだ様々な教訓を決して忘れずに、未来へ語り継いでいきたいという思いが込められています。緑色の円は、この時代を共に生きるすべての人とのつながりと団結力を意味します。澄んだ緑は東北の美しい自然の色、痛みを癒すやさしさと力強い希望の芽吹きの色です。被災地である宮城から発信する「緑の太陽」は、より多くの方々のご理解とご協力を求めています。

green-sun-badge

「緑の太陽プロジェクト」で販売している「緑の太陽ピンバッジ」(500円)の収益は、被災地への義援金として日本赤十字社に寄付されてきました。そして、今後の寄付先は、被害の大きい沿岸部の市町村を中心に、約半年おきに直接寄付されるようです。

さて、このプロジェクトを知って僕にも何かできないか、ということで、「MT関係書籍+緑の太陽ピンバッジ」をセットで500円で、抽選で2名の方に提供したいと思います。もちろん、この500円はピンバッジの購入代金ですので、義援金として寄付されます。書籍代は無料です。

数も少なく、本当に些細か行動かもしれませんが、できることをコツコツとやっていきたいと思います。

続きを読む

Power CMS for MT ver 3.1 に追加されたTwitter連携プラグインを使ってみた

Power CMS for MT ver.3.1 がリリースされました。

話題の「スマートフォンオプション for Movable Type - Six Apart」がバンドルされたり、Twitter連携プラグインが追加されたりと、ますますパワーアップ(してどんどんお買い得感がアップ)しました。

さっそく、スマートフォンオプションとTwitter連携プラグインを適用させてみました。Twitter連携はずっと待っていたのですごく嬉しいです。次は Facebook 連携ですかね。

Twitter連携プラグイン(TweetEntry)の設定でちょっとつまずきましたが、超速のサポートのおかげですぐに解決しました。

アルファサードさんのサポート、すごくいいです。本当に感謝!

このサポートも Power CMS for MT の大きな魅力の一つですね。

MTのダイナミックパブリッシングが真っ白だったのが解決したメモ

ちょっとよく分からない状態に遭遇してハマってました。

  • <$mt:Date$>だけを記述したインデックス・テンプレートをダイナミックパブリッシングにしたときは問題なく動作する
  • コメントの確認などのシステムのダイナミックは動作する
  • MTIncludeでモジュールを読み込んでいるインデックス・テンプレートだとダイナミックパブリッシングが真っ白になる

こんな具合でした。

色々検証した結果、どうも名前が日本語のテンプレートモジュールをMTIncludeしている部分が問題だったようです(コメントの確認とかは平気なんだけど…)。

そこで、きっとサーバーの設定に問題があるのかな〜と色々と確認した結果、MySQLの設定ファイル(/etc/my.cnf)に「skip-character-set-client-handshake」を加えたらうまく動作するようになりました。

でも、ググってみると「2007/04/23-01、skip-character-set-client-handshake について - debian-etch に関するメモ(後、lennyへアップグレード)」には「skip-character-set-client-handshake」は使わないほうがいいとあります。他にうまい解決策があるのだろうか…

ブログのデザインをリニューアルしました

もう先週の話になりますが、ブログのデザインをガラッとリニューアルしました。今回は、やわらかい感じでかわいい系を目指してみましたw

Before】約4年間、慣れ親しんだデザイン

After】やわらかく、かわいい感じを目指したデザイン

全部 Fireworks で

今回のデザインはすべてFireworksで作ってみました。僕のFireworksデビュー作です。Fireworks、予想以上に便利でたまげました。全部Fireworksでやろうと思ったきっかけとなったのは、今年の3月5日に開催された「CSS Nite LP, Disk 14「Photoshopper meets Fireworks」」でした。このイベント、僕の中ではかなり満足度が高かったのを良く覚えています。

続きを読む

ユーザーにブログの権限を与えるときのブログ一覧にウェブサイト名を表示するプラグイン - AssociationView

昨日、Twitterでこんなつぶやき(というか叫び?)を見ました。

: MT5でユーザーに権限を付与する際に違うウェブサイトで同一のブログが多量に有る場合、ウェブサイト名が出ないから全部同じなんだけど、どーしたもんか(;´Д`) 
http://twitter.com/#!/hira/status/129068859205488640

これ、そういや自分も経験あるな〜と思って「AssociationView」っていうプラグインを作ってみました。

続きを読む

MoreXtalk v1.3 リリース - フォローユーザーの入力補完に対応

先日のXtalkをより快適にする Google Chrome 拡張機能「MoreXtalk」について、@yagishitaさんから要望があったので、@を入力すると、自分がフォローしているユーザーの入力補完をできるようにしました。

ダウンロードはGithubから。

Xtalkをより快適にする Google Chrome 拡張機能「MoreXtalk」

Xtalk

Xtalk」とは、Movable Type を「誰もが使える、どこでも使えるシンプルで強力な情報流通プラットフォーム。」へと変化させるプラグインです。Movable Type を超強力なCMSへと進化させる「Power CMS for MT」で有名なアルファサードさんの製品です。

ようするに、MT を Twitter のようにしてしまう製品です。Twitter というと足りないかな、「Twitter + Tumblr + ブログ」といった方が近いです。さらに、データはMTに保存されるので、あとあと自分でテンプレートを書けば自由自在に情報を扱えますね。すばらしい。

Power CMS Partner になると、この Xtalk のライセンスも一つ貰えるので、ありがたく使わせていただいています。すごく便利ですよ。

そして今回は、この Xtalk の UI を少しだけ便利にする Google Chrome の拡張機能を作りました。マニアックなネタです。

続きを読む

ブログ記事のキーワード欄を「金額」として使っているとき、単位付き・3桁区切りで一覧画面に表示する方法

長いタイトルになりましたが、言いたいことはタイトルの通りです。僕は何度かあるんですけど、ブログ記事のキーワード欄を「金額」として使うことってありませんか?

MT5.1 では、Listing Framework のおかげで、キーワード欄をブログ記事の一覧画面に表示させるのはすごく簡単になりました。しかし、普通にやって表示されるのは数字のみですよね。今日は、もう一歩踏み込んで、この数字に「円」という単位を付けて、さらに3桁ごとにカンマで区切って表示してみたいと思います。

その前に一つ注意点。キーワード欄を金額として使ったとしても、一覧画面で文字列として認識されます。つまり、並べ替えをしても、

  • 15000
  • 1980
  • 200

のように正しく数値順にはなりません。その必要がある場合は、プラグインを使った別の方法を検討した方が良いでしょう。

続きを読む

jQueryでセレクタで指定するのとfilter()で絞るの、どっちがいいか。

すごい久しぶりの更新になってしまいました。

さて、jQueryには画像をスタイリッシュに表示するLightbox系のプラグインがたくさんありますね。そのプラグインを、画像へリンクしているa要素に適用させたいとします。いちいちclassやrelを振るのは面倒ですものね。

そんなとき、セレクタで指定するのと、filterで指定するの、パフォーマンス的にどっちがいいのかな、と思って試してみました、という軽い話です。

続きを読む

SQLで特定のブログのブログ記事を別のブログのウェブページに変更する

ちょっと自分用のメモです。

例えば、特定のブログ(ID = 6)にあるブログ記事を、その親のウェブサイト(ID = 1)のウェブページに変更したいとき、phpMyAdminを使って次のような SQL を実行すればOKです。

UPDATE `power_mt`.`mt_entry` SET `entry_blog_id` = '1',
`entry_class` = 'page' WHERE `mt_entry`.`entry_blog_id` =6

power_mt というのは、MTをインストールしているデータベースめいです。

ステータスにかかわらず全てのブログ記事の数を出力する Movable Type プラグイン - BlogEntryAllCount

Movable Type では、公開されているブログ記事の数を「MTBlogEntryCount」というテンプレートタグで出力することができますが、ブログ記事のステータスが「下書き」など非公開の状態のものも含めた数を出力するテンプレートタグはなかったと思います。

そこで、ステータスにかかわらず全てのブログ記事の数を出力する「MTBlogEntryAllCount」というテンプレートタグが使えるようになるプラグインを書きました。書きましたといっても MTBlogEntryCount のコードをほとんど流用しています。

このプラグインを使うと、「全X件のうち、掲載許可をいただいているY件の情報を掲載しています。」といったテンプレートが簡単に書けます。

詳細は以下からお願いします。