かたつむりくんのWWW

Movable Type の概要やテキスト(複数行)のカスタムフィールドをリッチテキストにする方法 - ドラッグ&ドロップやアセットの挿入にも対応

この記事で紹介している「$.MTAppApplyMCE();」は MTAppjQuery v1.8.0 より「$.MTAppApplyTinyMCE();」という名前で本体に取り込みました。

Movable Type の「概要」や「テキスト(複数行)カスタムフィールド」をリッチテキストにする方法を紹介します。

先日書いた「Movable Type の記事投稿画面にドラッグ&ドロップの並び変えに対応したリッチテキストエディタを追加してみる」の内容を少し成長させた感じです。

今回も「MTAppjQuery」がインストールされていることが前提となります。

まずは完成した動画をどうぞ。

続きを読む

MTAppjQuery v1.6.0 リリースと料金体系の変更のお知らせ - $.MTAppJSONTable() を追加ほか

MTAppjQuery v1.6.0 を公開しました。

今回のリリースでは、下記のような新機能の追加や修正があります。

新機能の追加

$(foo).MTAppJSONTable() を追加

fooに指定したtextareaを表形式の入力欄にし、表に入力された値をJSONで元のtextareaに保存します。保存されたJSONはjson_decodeモディファイアでデコードし、MT の配列やハッシュを使って取り出せます。

$("foo").MTAppJSONTable({
    inputType: 'textarea', // 'textarea' or 'input'
    caption: null, // String: Table caption
    header: null, // Object: Table header
    headerOrder: [], // Array: Order of table header
    headerPosition: 'top', // 'top' or 'left'
    footer: false, // If you use the table footer, set true.
    edit: true, // Disable table
    add: false, // true: A user can add rows or columns.
    clear: true, // false: Hide a delete button.
    debug: false // true: show the original textarea.
});

MTAppJSONTable

mtappVarsで取れる値を追加

  • mtappVars.modified_by で、記事やテンプレートを最後に編集したユーザー名を取得できるようにした(<mt:Var name="modified_by"> の値と同じ)
  • mtappVars.debug_mode で、環境変数の DebugMode を取得できるようにした( <mt:Var name="config.DebugMode"> の値と同じ)
  • mtappVars. language で、環境変数の DefaultLanguage を取得できるようにした( <mt:Var name="config.DefaultLanguage"> の値と同じ)

変更点

  • mtappVars.author_roles にセットされるロールを、表示中のウェブサイト/ブログに限定するように変更

修正点

  • プラグインの設定でuser.jsを無効にしてもmt-staticのuser.jsが読み込まれ続けるのを修正

続きを読む

公開された記事は編集出来ないようにする簡易ロック機能を Movable Type の記事投稿画面に導入してみる

今日の記事は、一般的な Web サイトの CMS として MT を使っている場合にはあまり需要はないかもしれませんが、もしも「一度公開したら編集されたら困るんです!」という要望があったときには役立つかも知れません。例えば MT で何かの経費を管理していて集計された後に修正されては困るとか。

できあがりは下図のようになります。

簡易ロックスクリーン

ロックスクリーンに使用している鍵アイコンは、「Movable Type の管理画面で Font Awesome を使おう」で取り入れた Font Awesome を使って表示させます。

続きを読む

Movable Type の管理画面のフィールド名の横にヘルプアイコンを入れてユーザーの手助けを

Movable Type でカスタムフィールドを作るときに「説明」欄にテキストを入れると、そのカスタムフィールドの下に、入力したテキストが表示されます。

説明欄のテキスト

でもこれ、ちょっとフィールド名から遠くないですか?

ということで、今回はフィールド名の横にヘルプマークのアイコンを置いて、それにマウスを乗せるとヘルプテキストが表示されるようにしてみたいと思います。

続きを読む

MTAppjQuery でのカスタマイズをウェブサイト内のブログにまとめて適用させる方法

MTAppjQueryの設定をWEBサイト内のBlogに一括で適用させる。 - 継続は力なり!なのか?」の記事にも書かれていますが、MTAppjQuery でウェブサイト内のブログに同じカスタマイズをまとめて適用したいという需要は結構ありますね。

この記事で紹介されている方法もその一つですが、他にもいくつか方法がありますので、それらの方法を紹介します。

続きを読む

Movable Type 6.0.4 リリース

Movable Type 6.0.4 がリリースされました。

今回のリリースでは、150件以上の修正や機能改善が含まれているそうです。

bit part も少しですが貢献できましたので、今後も Movable Type がより良い製品になるように関わっていければ良いと思います。

Movable Type の管理画面で Font Awesome を使おう

Movable Type の管理画面をカスタマイズするとき、アイコンを使いたくなることってありませんか?

そういうときは MT 本体で使っているアイコンを使うというのがデザインの統一性を考えるとベストかも知れません。でも mt-static/images ディレクトリから探すは結構手間がかかります。また、フリーのアイコンを持ってきて使うという方法もありますが、それも少々面倒です。

そこで、今回は手軽に多数のアイコンを使える「Font Awesome」を MT の管理画面で使ってみようと思います。

Font Awesome

続きを読む

ブログ・ユーザー・ロールごとにフィールドの表示・非表示を切り替えるには

前回「フィールドやメニューの表示・非表示だけの制御だったら user.css がおすすめ」という記事を書きましたが、今回は、それをブログごと、ユーザーごと、ロールごとといった条件で表示・非表示を変える方法を紹介します。もちろん、MTAppjQuery がインストールされていることが前提です。

続きを読む

フィールドやメニューの表示・非表示だけの制御だったら user.css がおすすめ

Movable Type の記事投稿画面において、MTAppjQueryMTAppCustomize というメソッドを使えば、「表示オプション」に関係なく簡単にフィールドの表示・非表示を制御することができます。

表示オプション

しかし、フィールドの表示・非表示の制御だけであれば CSS で行った方がパフォーマンス的に良いかも知れません。メニューも然り。

そこで今回は、CSS でフィールドやメニューの表示を制御する方法をご紹介します。

なお、下記で紹介するコードは user.css に書いていくと良いでしょう。

また、フィールドの表示制御は記事の編集画面だけに適用するようにしています。記事編集画面以外にも使う場合は、先頭の #edit-entry を削除するか、適宜変更してください。メニューについては全ページ共通です。

続きを読む

Movable Type の記事投稿画面で複数のフィールドをグループ化し2列にする

Movable Typep の記事投稿画面で、複数のフィールドをグループ化し、そのグループ化した中身のフィールドを2列で表示する方法を紹介します。

完成した見た目は下図のようになります。

このカスタマイズは、MTAppjQuery の user.js と user.css にちょっとしたコードを書けば完成です。

続きを読む

Movable Type の記事投稿画面にドラッグ&ドロップの並び変えに対応したリッチテキストエディタを追加してみる

今回は、Movable Type の概要欄を例に、普通の textarea をリッチテキストエディタに変更し、さらにドラッグアンドドロップによる並び替えをしても入力出来なくならないようにしてみたいと思います。

概要欄をリッチテキストエディタにする方法は藤本さんがブログに書かれています。

この記事の中でも、

概要欄をドラッグアンドドロップで並べ替えると、リッチテキストが入力を受け付けなくなります(ページをリロードすれば入力できるようになります)

と書かれていますが、このドラッグアンドドロップに対応させてみたのが下記のコードです。

続きを読む

MTAppjQuery で大量のカテゴリがあっても選択しやすくしてみよう!Popup Category Selecter がいい感じ!

Movable Type でカテゴリが大量にあるとき、選択するのが面倒だったりしませんか?例えば都道府県すべてがカテゴリになっている場合などが考えられますね。

今回はそういったときでもカテゴリを選択しやすくするためのカスタマイズを紹介します。

今日の動画はこちら。

※音声ありです。

続きを読む

MTAppjQuery の user.css だけで作るとてもワイドな Movable Type の記事投稿画面が素敵

MTAppjQuery のメイン機能の中で意外と影が薄い user.css ですが、Movable Type 6 のサポートブラウザが IE8 からということもあり、CSS だけでも色々とできるようになってきています。

Full screen edit entry

今回は、user.css だけで、記事編集画面とテンプレート編集画面のメインカラムをほぼ画面いっぱいに広げるカスタマイズを紹介します(ちなみに PowerCMS は標準の機能で左メニューを左側に隠せます)。

個人的に、かなり気に入ってます。まずは動画をどうぞ。

※音声ありです。

続きを読む

かなり便利!?列も行も自由に増やせる .MTAppJSONTable(開発中)のデモ公開

次のバージョンの MTAppjQuery v1.6.0 で追加予定の .MTAppJSONTable() の動画で紹介してみました。

テキストエリアを表にし、列も行も自由に増やすことができます。値自体は JSON 文字列で保存されるので、MTタグでもPHPでもJSでも自由に料理することができると思います。

10分弱とちょっと長くなってしまいまいましたが、気楽に見ていただければ嬉しいです。

※音声ありです。

PowerCMSのウェブページカスタムフィールドの挙動について整理したメモ

PowerCMS™にはウェブページカスタムフィールドというのがあります。このカスタムフィールドの機能をざっと説明すると以下のようになります。

  1. 「ウェブページを選択」というボタンが表示される。
  2. そのボタンをクリックするとダイアログでウェブページ一覧が表示され、ウェブページを1つ選ぶことができる。
  3. カスタムフィールドを作成するときに設定したタグ、例えば RelatedPage と設定したとすると、それがブロックタグとなり、その中では MTPage 系のタグを使うことができる。

便利ですね。もちろん複数選択できるバージョンもあるし、記事を選択するバージョンもあります(そっちがメインかな)。

さて、今回のメモはこのフィールドに値があるときとか、選択したウェブページが未公開状態だったときとかの挙動を整理したものです。

最初に言っておくと、結果を見てみれば当たり前な感じなんです。。。
でも、ふと疑問に思ったんですよ、「ウェブページを選択したらそのカスタムフィールドに値は保存されるけど、その先が未公開だったら MTIf tag="" の判定はどうなるんだろう」って。

まあ、当たり前を当たり前に実装するプラグイン作者は何気に凄いです。サッカーの名選手と同じですね。

さて、結果については以下の様になりました。今回のカスタムフィールドのタグ名は RelatedPage とします。

続きを読む

アイテムダイアログに表示されるアイテムをログイン中のユーザーのアイテムに絞り込むプラグイン - AssetDialogAuthorFilter v1.2.0 リリース

えっと、約2時間前にリリースしたばかりのプラグインなんですが、公開直後に「こうやって実装した方がいいよ」っていうアドバイスを @okayama さんから頂きまして、がらっと書き換えました。

プラグインの仕様は下記の記事に書いたとおりで変更ありません。

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

@okayama さん、ありがとうございます!!

アイテムダイアログに表示されるアイテムをログイン中のユーザーのアイテムに絞り込むプラグイン - AssetDialogAuthorFilter

2014/07/28追記
アイテムダイアログに表示されるアイテムをログイン中のユーザーのアイテムに絞り込むプラグイン - AssetDialogAuthorFilter v1.2.0 リリース

記事の編集画面で本文欄などに画像を挿入するとき、アイテム一覧のダイアログが表示されますよね。

アイテムのダイアログ

デフォルトの挙動では、そのブログにアップロードされている画像がすべて表示されると思いますが、それをログイン中のユーザーがアップロードしたアイテムに絞り込んだ状態で表示するようにするプラグインです。

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

特に設定はありません。プラグインをインストールすれば適用されます。

続きを読む

MTAppjQuery v1.5.0 リリース - $.MTAppGetCategoryName() を追加ほか

MTAppjQuery v1.5.0 を公開しました。

今回のリリースでは、下記のような新機能の追加と修正があります。

新機能の追加

$.MTAppGetCategoryName();

カテゴリIDを渡して、記事の編集画面ではカテゴリ名を、ウェブページの編集画面ではフォルダ名を取得できます。

$.MTAppGetCategoryName({
    categories: MT.App.categoryList,
    id: 1, // Set Category ID you want to get the label or basename.
    field: 'label' // You can set 'label' or 'basename'
});

修正

  • $.MTAppSlideMenuV2() で、ウェブサイト名が長いときにサブメニューの上にウェブサイト名のテキストが重なって表示されていたバグを修正した。
  • 記事・ウェブページ・テンプレートのプレビュー画面でもMTAppjQueryが適用されるようにした。
  • splitモディファイアをダイナミックパブリッシングに対応させた。

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

記事やウェブページの非公開日時を出力するプラグイン - UnpublishDate

Movable Type 6 から設定出来るようになった、記事やウェブページの非公開日時を出力するプラグイン「UnpublishDate」を公開しました。

すでに同じようなプラグインがあったらすみません。

プラグインをインストールすれば、以下の2つのタグが使えるようになります。

<mt:EntryUnpublishDate>
<mt:PageUnpublishDate>

mt:Dateタグと同様にformatモディファイアなどが使えます。

以上です。

MTSubCatsRecurse タグの苦手意識を克服したいあなたへ

MTSubCatsRecurseタグの苦手意識を克服したいあなたへ贈る記事です。

ちょっとラフな感じで。

続きを読む