MTAppJQueryでブログIDを動的に取得する方法
初心者にとってMovableTypeのカスタマイズで難しいのが「管理画面」。
それをjQueryの知識だけで簡単にしてくれるのが「MTAppJQuery」というプラグインです。 このプラグインの便利さはここに書ききれませんが、今回はMTAppJQueryでの悩みの一つである「ブログごとにカスタマイズ内容を変えたい場合はどうするか?」という点。 ここを明らかにしていきたいと思います。
ブログIDを取得して分岐
結論から言うと、作成したブログ毎のブログIDを「m「user.js」ファイル内で取得できれば、あとはif文を使って以下のように分岐させることができます。
//編集中のブログIDを取得
blogID = mtappVars.blog_id;
//ブログ1
if (blogID == 1) {
$.MTAppCustomize({
basename: 'title',
show_field: 'hide'
});
...
//ブログ2
} else if (blogID == 2) {
...
}
見てお分かりのように「mtappVars.blog_id」を参照することによって、動的にブログIDを取得することができるんですね。 このmtappVarsには他にどのような変数が格納されているかを挙げてみます。
mtappVars内に定義された変数
| 変数名 | 説明 | 例 |
|---|---|---|
| author_id | 作者ID | 2 |
| blog_id | ブログID | 3 |
| entry_id | エントリーID | 1 |
| page_id | ウェブページID | 1 |
| category_id | カテゴリーID | 2 |
| template_id | テンプレートID | 0 |
| blog_url | ブログURL | 1 |
| static_plugin_path | MTAppJQueryの静的プラグインパス | /mt/mt-static/plug-ins/MTAppJQuery |
| html_title | タイトル | <__trans phrase="Dashboard"> |
| scope_type | スコープタイプ | blog |
| selected_category | 選択中のカテゴリー(配列) | [] |
| main_category_id | メインカテゴリーID | 0 |
| screen_id | スクリーンID | dashboard |
| body_class | bodyタグに付けられたクラス名 | ["main-screen","blog","has-menu-nav"] |
| template_filename | テンプレートファイル名 | dashboard |
| json_can_create_post_blogs | 不明 | [] |
これだけ事前に分かっていれば、エントリー編集画面だけでなく、記事リストなどの様々な管理画面でも利用できると思います。
Auto Amazon Links: プロダクトが見つかりません。
2012-04-15