MTAppBatchEditCategory
テキスト欄を PowerCMS/MT のアセット選択ダイアログで扱えるフィールドにし、選択アセットの情報(id/ファイル名/URL/サムネ)を JSON 保存する jQuery プラグイン。P7 最適化版。
記事/ウェブページの一括編集画面で、カテゴリ(記事)またはフォルダ(ページ)を全行まとめて変更するボタンを追加する jQuery プラグインです。一括編集の操作バーに「一括指定用のプルダウン」と「まとめて変更ボタン」を追加し、ボタンを押すと全行のカテゴリ/フォルダ列がプルダウンで選んだ値に一括設定されます。
構文
$.MTAppBatchEditCategory(options);$. 直下の静的メソッド($.MTAppBatchEditCategory(...))です。一括編集画面(batch-edit-entry / batch-edit-page)以外では何もしません。
パラメータ
options {Object} — 省略可。
| プロパティ | 型 | 既定値 | 説明 |
|---|---|---|---|
text | string | をまとめて変更 | ボタンに表示するテキスト。先頭に「カテゴリ」(記事)または「フォルダ」(ページ)が自動で付与される(例: カテゴリをまとめて変更) |
戻り値
{void} — 一括編集画面でない場合、またはカテゴリ/フォルダ列が無い場合は何もしません。
使用例
// 一括編集画面でカテゴリ/フォルダの一括変更ボタンを追加する
$.MTAppBatchEditCategory();
// ボタンのテキストを変更する
$.MTAppBatchEditCategory({ text: 'を一括設定' });user.js での記述例
user.js(「デザイン → user.js を編集」)に書く場合は、mtappVars.screen_id で画面を判定して呼び出します。
(function ($) {
if (typeof mtappVars !== 'object') return;
if (mtappVars.screen_id.indexOf('batch-edit-') === 0) {
// 一括編集画面
$.MTAppBatchEditCategory();
}
})(jQuery);生成される HTML
一括編集画面の操作バー(#actions-bar-top)の保存ボタンの直後に、一括指定用のプルダウン(先頭行のカテゴリ/フォルダ選択を複製したもの)と、まとめて変更ボタンが挿入されます。
<div id="actions-bar-top">
<button class="primary">保存</button>
<select style="margin-right:5px;">…(カテゴリ/フォルダの選択肢)…</select>
<button class="button" title="カテゴリをまとめて変更">カテゴリをまとめて変更</button>
</div>補足
- 一括編集画面(記事一覧で複数記事を選択 → アクション「記事の一括編集」)でのみ動作します。記事なら「カテゴリ」、ページなら「フォルダ」を対象にします。
- ボタンを押すと、複製したプルダウンで選んだ値を、一覧の全行のカテゴリ/フォルダ列(
td.category select)に一括で設定します。設定後、通常どおり「保存」で確定します。 - 一括編集画面にカテゴリ/フォルダ列が表示されていない場合は何もしません。
- ボタンのラベルやタイトルは要素のテキスト/属性として安全に設定するため、
textに記号が含まれても HTML として解釈されません。
関連
MTAppCategorySwitch— カテゴリ選択に応じて記事編集画面のフィールド表示を切り替える。MTAppOtherTypeCategories— 記事編集画面で他のカテゴリセットを選択できるようにする。