公開日:
MTAppMultiCheckbox を本体に復活させました。 標準の「タグ」欄に適用して、表記ゆれの無い安定したタグ入力を実現できます。
タグは自由入力なので、同じ意味でも「お知らせ」「おしらせ」「オシラセ」と揺れがちです。揺れたタグはサイト側でまとめて拾えず、タグを使った一覧やアーカイブが崩れます。
MTAppMultiCheckbox を標準のタグ欄に適用すると、あらかじめ決めた語彙をクリックで入力できるようになり、この問題が起きなくなります。
$.MTAppMultiCheckbox({
basename: 'tags',
label: 'お知らせ,イベント,採用情報,プレスリリース',
skin: 'tags'
});
user.js にこれだけ書けば、タグ欄がタグ風のボタン(ピル)に変わります。編集者は選ぶだけでよく、打ち間違いも変換ミスも起こりません。
v1.0.0 では「PowerCMS 7 標準の複数選択チェックボックスで代替できる」と判断して削除していましたが、標準のフィールド型は新規のカスタムフィールドとしてしか作れず、コアのタグ欄には後付けできません。実際にこの使い方をされているお客様がいらっしゃり、おすすめできる使い方でもあるため、本体に戻しました。
これでメソッド数は 39 から 40 になりました。
コアのタグ欄は、独自のカスタムフィールドとは扱いが異なります。今回の復活にあわせて、タグ欄で安全に使えるよう次の対応を入れています。
label を省略すると、そのスペースの既存タグが選択肢になります。 ただしタグ数が多い環境では選択肢が大量に並ぶため、label を明示する使い方をおすすめします。タグ入力は編集者が毎日触る画面なので、あわせて次の点を改善しました。
skin: 'tags')でチェックボックスを隠す方法を変更し、Tab での移動と Space での選択ができます。フォーカス位置も分かるようになっています。alert)をやめ、欄のすぐ下に表示するようにしました。スクリーンリーダーにも読み上げられます。plugins/MTAppjQuery/ と mt-static/plugins/MTAppjQuery/ を <MT_HOME> 配下の同じ場所へ上書きします。mt-static/plugins/MTAppjQuery/user-files/ には配布物にも同名の空ファイルが含まれます。ご自身の user.js / user.css / jquery_ready.js を上書きしないようご注意ください。設定項目の追加・変更はありません。v1.0.0 の user.js はそのまま動作します。
MTAppMultiCheckbox は P5 と同じメソッド名・同じオプション名で動作します。P5 の user.js に書かれた呼び出しは、原則そのまま使えます。
ただし次の 2 点だけ P5 と異なります。
add: true の指定に関わらず常にチェック済みの選択肢として追加します。$(selector).multicheckbox()(内部の jQuery プラグイン)は提供していません。直接呼び出していた場合は $.MTAppMultiCheckbox() に置き換えてください。詳しくはオンラインマニュアルの「P5 からのアップグレード」を参照してください。