かたつむりくんのWWW

来週の土曜日は MTDDC 2013 へ!

2013年8月3日(土)に、品川のマイクロソフト本社セミナールームにて、MTDDC 2013(Movable Type Developers & Designers Conference 2013)が開催されます。

今回の MTDDC の目玉は、なんと言っても Movable Type 6 の情報でしょう。どんな情報が聞けるのか、技術的なこと、ビジネス的なこと、その他色々と非常に楽しみです。

また、僭越ではありますが、僕ら bit part も登壇させていただくことになっております。ご来場いただいた方に少しでもお役に立つ内容を話せるように準備していきたいと思います。

さあ、来週の土曜日は品川へ!!

MTAppjQuery v1.0.1 リリース

MTAppjQuery v1.0.1 をリリースしました。

今回は、PowerCMS で利用する場合のバグフィックスと新機能の追加です。通常の MT でお使いになっている場合にはアップデートする必要はありません。

  • PowerCMS のリビジョン管理の時に MTAppjQuery が使えなくなる不具合を修正
  • PowerCMS のグループ編集画面で、左のカラムにテキスト検索フィルターを追加する MTAppGroupFilter を追加

また、MTAppjQuery User's Guide もアップデートしています。

epub、mobi、pdf、オンライン版を用意してますので、是非ともご購入をご検討ください!

MTAppjQuery v1.0.0 リリース

さきほど、MTAppjQuery v1.0.0 をリリースしました!

新しいメソッドが追加されたり、user.js をインデックステンプレートで簡単に管理できるようになったりと、かなり使いやすくなったと思っています。何が新機能なのか、正直自分でもよく分からないです(汗)。

v1.0.0 の詳細は上記の bit part ブログの記事を見ていただくとして、今回の v1.0.0 で何が大変だったかというと、ドキュメントの作成です。これまでも色々な機能を随時追加していましたが、何しろドキュメントを書く余裕がなくて...。ソースコードにはコメントで簡単な使い方は書いておいたのですが...(言い訳)。

でもドキュメント、大切ですね。せっかく作った機能も使ってもらえなければ意味がないし、何よりドキュメントを書くことでバグが見つかったり使いにくい部分が分かったりしました。今回の v1.0.0 ではそういう至らない点もだいぶつぶせたと思います。

というわけで、すごく苦労したドキュメントも 5,250円(税込み)で販売させていただいております。

epub、mobi、pdf、オンライン版を用意してますので、是非ともご検討ください!

これまでは、僕一人の気まぐれでやってきましたが、これからは mersy と bit part としてがんばっていくので、今までよりも少しは皆様のお役に立つ何かを提供できれば良いと思っています。

至らない点も多いと思いますが、これからも MTAppjQuery をよろしくお願い致します!

MTAppjQuery v1.0.0 そろそろリリースか?

現在、MTAppjQuery v1.0.0 の beta 版を公開していますが、来週、正式版を公開する予定です。本当は先週辺りの公開を目指していたのですが...

今回の v1.0.0 では、mt-static に置く方のディレクトリの構造を少し変更したため、アップデートするときに少し注意が必要です。bit part ブログにアップデート方法を掲載しましたので、参考にしてください。

また、v1.0.0 には、いくつかの MTAppjQuery メソッドを追加しましたし、split モディファイア(荒木さんのとそんなに動作はかわらないと思う...)と compress モディファイア も追加しましたので、少しは便利さが増したと思います。

そして、ドキュメントを書きながら、バグというか、イケてない感じのところも結構潰しました。

ということで、公開に向けてがんばります!

MTAppjQuery v1.0.0 Beta リリース

bit part blog にも書きましたが、Movable Type 5 の管理画面を jQuery でカスタマイズするプラグイン「MTAppjQuery」の v1.0.0 Beta をリリースしました。

これまでの最新版が v0.28 なので一気にバージョン番号飛んだ感じですね。

まだ細かいバグ(主に JavaScript 関係)はあるかもしれませんが、僕はすでに本番環境で使ってるので大きな問題はないと思います。

今回のバージョンの特長をざっと挙げてみます。

  • プラグイン自体のメンテナンス性の向上
    • user.js をインデックステンプレートで管理
    • インデックステンプレート以外の user.js 等は1つのディレクトリで管理
    • user.js 等の URL を指定することも可能
  • 新機能の追加や既存機能の強化
    • MTAppLineBreakField(テキストフィールドを自由に増やしたりドラッグアンドドロップで並べ替えたり!)
    • MTAppSetLabel(ラベルをまとめて変更)
    • MTAppFancyListing(MTのポップアップウィンドウみたいなやつ)
    • MTAppSortableBatchEdit(ドラッグアンドドロップ時にタイトルに自動で連番振るとか)
  • その他色々細かい JavaScript 関連のバグフィックスとか

ご興味のある方は是非とも使ってみてください。

Beta 版はまだ master ブランチにはマージしてないので、以下のリリースブランチのものをダウンロードしてください。

今月中に正式版をリリースして、それと同時に mersy と必死で書いてるドキュメントを公開(販売)したいと思います(もちろんプラグインは無料のままです)。

ドキュメントは、

  • ほぼ全部の機能の使い方
  • オプションの設定
  • サンプルコード

を載せてます。ドキュメントのファイル形式も epub、PDF、HTML など複数用意する予定です。

さらに、購入していただいた方は bit part support っていうYammer にご招待して、サポートなども行っていきたいと思っています。

そちらも是非ともよろしくお願いします!

CategoryDepth v0.1.1 リリース - バグフィックス

カテゴリの階層の深さを出力する Movable Type プラグイン「CategoryDepth」に、カテゴリーアーカイブのテンプレートに直に書くとコンテキストエラーが出るという致命的なバグがあったので修正しました(>_<)

でもこれ、今書いてるテンプレートでカテゴリ一覧のインデントを設定するのに使ってるんですけど、便利だわ〜。

Redmine で期日が間近のチケットをメールで通知する

最近、bit part では Redmine を使って色々なことを管理しています。そこで「期日が間近のチケットをメールで通知する(リマインダ機能) -- Redmine.JP」というのが出来たら便利かな、ということで導入してみることにしました。

しかし、直接コマンドを打てばちゃんとメールが飛ぶのに、cron で実行しようとするとなかなかうまくいきません。

Twitter でアドバイスもらったり、色々調べた結果、単に cron だと rake コマンドのパスが通ってないだけでした。cron のログとかにコマンドが見つかりません的なログが残ってくれていれば直ぐに解決できたのに...

which rake

これで rake コマンドのフルパスを得られるので、それで cron に設定します。午前3時にメールを飛ばす場合は、

00 3 * * * root cd /path/to/redmine ; /usr/local/bin/rake redmine:send_reminders RAILS_ENV=production

これで OK でした。

こんな初歩的なことで躓いてスミマセン!

MTCafe Tokyo 2013 Spring 楽しかったです!(コケたけど)

4月20日に開催された「MTCafe Tokyo 2013 Spring」に行ってきました。僕も「Movable Typeの実践的な管理画面カスタマイズ、検索カスタマイズ」というタイトルでお話しさせていただきました。

が、しかし、当日はデモを中心にやろうと思っていたのに、直前に MacBook のレインボーが消えなくなるわ VMware Fusion 5 が落ちるわで、結局デモはほとんどうまくいきませんでした(ToT) 当日の不手際、申し訳ございませんでした!(>_<)

デモをやる前にはお参りする必要があるそうです...(KING談)

しかし、その他の内容は充実していたようで、僕も柳下さんのセッションを後から聞きましたが、すごく勉強になりました。

また、北は北海道、南は九州から、全国の MTLover が集まり、懇親会も楽しくお話しできてとても楽しい時間を過ごすことができました。にっくさんをはじめ、関係者のみなさまお疲れ様でした!

次は MTCafe Saitama 2013 が開催されます。「WPer&PHPerのためのMovable Type」というテーマで、Movable TypeをWordPressやPHPと連携させるという、これまた非常に楽しみなイベントになりそうです。

最後に、当日の僕のスライドを貼っておきます。デモについては、後日動画に撮って公開しようと思います!

MTAppjQuery 0.28 リリース - ストラクチャーダッシュボードウィジェットのバグフィックス

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

ユーザーダッシュボードの構造タブで、ブログ記事一覧、ウェブページ一覧、コメント一覧へのリンクが正常に機能していなかったのを修正しました。

    以下のページの「Release-v0.28」の zip か tar.gz をダウンロードしてください。

    mt-static/plugins/MTAppjQuery 内のファイルに変更はありませんので、plugins/MTAppjQuery だけ差し替えればOKです。

    なお、近日中に、MTAppjQuery 1.0.0 をリリースする予定です。このバージョンからは、インデックステンプレートで user.js などを管理できたり、その他色々なメソッドを追加したりと、少しパワーアップしています。

    MTCafe Tokyo 2013 でお話しさせていただきます!

    4月20日に「MTCafe Tokyo 2013 Spring」が開催されます。

    MTCafe というのは、MTユーザーのゆるいオフ会です。これまでもリラックスした雰囲気で何度か開催されてきましたが、今回は少し違って勉強会形式で2つのお部屋に分かれて開催されます。

    内容は次の通りで、恐れ多くも僕も1セッションお話させていただくことになりました。

    続きを読む

    Custom Field GUI Utility 3.3.0 リリース

    WordPress のカスタムフィールドを使いやすくするプラグイン「Custom Field GUI Utility 3.3.0」をリリースしました。

    今回のアップデートは「カスタムフィールドを扱いやすくするWordPressプラグイン「Custom Field GUI Utility」をアップデートしました!WordPress3.5に対応&管理画面での編集が可能に! | WebCake」にあるように、全部 Tsuyoshi さんがやってくださいました。Tsuyoshiくん、ありがとうー!!

    Custom Field GUI Utility 3.3.0 で新しくなった部分は上記 Tsuyoshi さんの記事をご覧ください。丸投げですみません(>_<)

    最新版は以下のページから zip ファイルをダウンロードしてください。

    ダウンロードして解凍したら、フォルダ名を「custom-field-gui-utility」に変更した後、サーバーにアップロードしてお使いください。

    なお、当プラグインのドキュメントも少し古くなってきました。ドキュメントも GitHub の README に移そうと思います。

      MTML Completions(MTタグを補完する Sublime Text 2 用パッケージ)でタグの書式が変更可能になりました

      先日公開したMTML Completions」と「PowerMTML Completions」で、テンプレートタグの入力フォーマットを変更できるようになりました。

      <mt:EntryTItle /> や <$mt:EntryTitle$>、<MTEntryTitle />、<$MTEntryTitle$>、<MT:EntryTitle> などお好きなフォーマットで補完することができます。

      続きを読む

      Movable Type と PowerCMS のテンプレートタグを補完する Sublime Text 2 のパッケージを公開しました

      Movable Type と PowerCMS のテンプレートタグの入力補完を提供する Sublime Text 2 用のパッケージ、「MTML Completions」と「PowerMTML Completions」公開しました。

      今年1月から linker の mersy くんと始めた bit part の成果物第一弾といったところです(2013年からbit partという取り組みを始めることにしました|linker journal)。

      続きを読む

      続:さくらのクラウドの2台構成とさくらのVPSのSSD1台でMTの再構築時間を比べてみた(PSGI編)

      前回「さくらのクラウドの2台構成とさくらのVPSのSSD1台でMTの再構築時間を比べてみた」の続編です。前回の構成は、MT5.13、CGI でしたが、今回は MT5.2.2、PSGI(PSGI + Starman + Apache)にして比較してみました。

      前回同様、比較したのは次の二つの環境です。

      1. さくらのクラウドのプラン1(仮装1コア、メモリ2GB)を2台(WebサーバーとDBサーバー)で動かした MT
      2. さくらのVPS の SSD2G のプラン(仮想3コア、メモリ2GB、SSD)1台で動かした MT

      続きを読む

      さくらのクラウドの2台構成とさくらのVPSのSSD1台でMTの再構築時間を比べてみた

      さくらの VPS に SSD プランが登場したので、どれだけ速いのかと期待に胸を膨らませて Movable Type の再構築時間を比較してみました。

      比較したのは次の二つの環境です。

      1. さくらのクラウドのプラン1(仮装1コア、メモリ2GB)を2台(WebサーバーとDBサーバーとして)で動かした MT
      2. さくらの VPS の SSD2G のプラン(仮想3コア、メモリ2GB、SSD)1台で動かした MT

      これらのサーバーに、このブログのデータを入れて、すべてのブログ記事を再構築してみました。なお、どちらも普通に CGI で動いています。

      続きを読む

      あけましておめでとうございます!今年はもっとアウトプットも。

      あけましておめでとうございます。

      あっという間に 2012 年が過ぎ去っていた感じがします。去年も相変わらず Movable Type、特に PowerCMS にお世話になりまくりました。そして、今年も引き続き PowerCMS にはお世話になりたいと思っています。

      さて、去年は1年間に100本のブログ記事を書くという目標を立てましたが、結果は 53 本に終わりました・・・。今年こそは年間 100 本という目標を達成できるようにがんばりたいと思います。

      去年は、このブログで公開している Movable Type のプラグインの「MTAppjQuery」や、jQuery のプラグインの「flexibleSearch」は、わりと多くの方に使っていただいて頂いているのですが「ドキュメントが少ないぞ!」とのお叱りをよく受けます。申し訳ないです・・・。

      特に、MTAppjQuery については、公開されているドキュメントよりも機能が増えていたり、もう少し使いやすくなっていたり、誰も知らない機能があったり、という有様です。

      今年は、そういった情報ももっとアウトプットしていきたいと思っています。

      また、DynamicMTML を活かしたプラグインの開発や、去年はほとんど取り組まなかったスマホ系の何かについて、今年は少し力を入れていきたいと思います。

      そして、今年もやはり、PowerCMS を使っての作業がメインになればいいなと思います。そこは維持できるように、もっと自分の中型免許スキルを上げていきたいと思います。

      その他、WPプラグインの Custom Field GUI Utility も相変わらずお使いいただいていて感謝しております。こちらも半ばやっつけの更新ですが、もうちょっとこうしたら便利だよなーというのはあるので、時間があればカスタマイズしていきたいと思います。

      去年1年間でいろいろないろいろな事を経験しましたが、自分に足りないモノが色々と見えてきました。技術面でも、効率の面でも、人間的な面でも父親としても。今年はそれを課題とし、克服していきたいと思います。

      ということで、本年もよろしくお願い申し上げます!

      Update Me, Everyday!!

      データベースも静的ファイルも丸ごとバックアップする Perl スクリプト all-backup.pl

      この記事は、「Movable Type Advent Calendar 2012」の6日目の記事です。

      みなさま、今日で僕は 36 歳になりました。たくさんのお祝いの言葉をいただき、ありがとうございます。36 歳の 1 年も「Update me, everyday!!」をモットーに日々精進していきたいと思います。

      いやー、思い返せば 36 年間色々なことがありました。色々な、本当に色々な、、、あれ?思い出せない。。。思い出せないぞ、過去の記憶が〜〜〜!

      ええ、過去の記憶はとても大事です。なくさないようにバックアップしておきましょう。

      ということで、データベースも静的ファイルも丸ごとバックアップして、FTP で別のサーバーに転送までしてくれる「 all-backup.pl 」という Perl スクリプトを書きました。

      続きを読む

      Sublime Text 2 用 Movable Type テンプレートタグのスニペット集

      今夜の Coda2 + Sublime Text 2 特集の「CPI x CSS Nite「After Dark」(5)」に参加するということもあるので、自分で使っている Sublime Text 2 用の MT タグの補完ファイル(スニペット)を公開します。多分、MT5.2 までの全部の MT タグが入っていると思います。

      ファイルを展開して、Sublime Text 2 の Packages のディレクトリに突っ込めば良いかと思います。

      インストールしたら「mt」と打って「ctrl + space」で補完リストが表示されます。素敵!(SublimeCodeIntel 使っても自動では表示されませんでした。なんでだろう?)。

      もう少し自分好みにカスタマイズしたら、まじめに公開しようと思いますw

      さくらのクラウドのサーバーを変えてみた

      このブログは、さくらのクラウドを利用しているのですが、先ほど、色々トラブルのあった旧ストレージから新ストレージに変更してみました。この記事は、新サーバーのIPアドレスを打って書いているので、この記事が見えるということは新サーバーということになります。

      旧ストレージから新ストレージに変更する際に、Webサーバーの方はメモリを3Gから2Gに落としたので、少しだけスペックダウンです。それ以外はほぼ同じ構成とし、その状態で全ブログ記事を再構築(Movable Type)したところ、旧ストレージのときよりも再構築時間が 5 分短くなっていました。

      11月から、新規受付も再開したさくらのクラウド。これから巻き返しに期待したいですね。

      Movable Type でカスタムフィールド foo の値が bar なブログ記事のカテゴリを hoge に一括で変更したい

      なんかクイズのようなタイトルですね…

      例えば、basename が「birthday_year」(誕生日の年)のカスタムフィールドの値が、1810年代に該当するブログ記事が属するカテゴリのうち、カテゴリIDが120のカテゴリを、一括でカテゴリIDが121のカテゴリに変更したいとき、以下の SQL を実行すれば OK です(妙に具体的w)。

      UPDATE `mt_placement`
      INNER JOIN `mt_entry_meta`
      ON `mt_placement`.`placement_entry_id` = `mt_entry_meta`.`entry_meta_entry_id`
      SET `mt_placement`.`placement_category_id` = 121
      WHERE `mt_placement`.`placement_category_id` = 120
      AND `mt_entry_meta`.`entry_meta_type` LIKE 'field.birthday_year'
      AND `mt_entry_meta`.`entry_meta_vchar_idx` REGEXP '^181.*';

      直接データベースをいじるので、バックアップは忘れずに!ご利用は自己責任で。