ScheduleField v1.3.2 リリース
コンテンツタイプ保存時に「入力項目」が消える不具合を修正しました
Movable Type 9 のコンテンツタイプ編集画面でスケジュールフィールドの設定を保存すると、「入力項目」(テーブルの列を定義する設定)だけが保存されず、保存のたびに空になる不具合を修正しました。
ラベル・説明・必須・表示オプションといった他の設定は正しく保存されるため、「入力項目の表だけが消える」という症状になります。設定側の列の定義が空になることで、コンテンツデータ編集画面にも入力欄が表示されなくなります。
消えるのはコンテンツタイプ編集画面(設定側)の「入力項目」のみです。 各コンテンツデータに入力済みのスケジュールのデータそのものは影響を受けません。
発生条件
項目 | 内容 |
|---|---|
対象バージョン | ScheduleField v1.3.0 / v1.3.1 |
発生する環境 | Movable Type 9 系(9.0.x〜9.2.0)の標準状態 |
発生しない環境 | Movable Type 8 系の標準状態( |
Movable Type 9 では UseRiot の既定値が未設定(=新方式のコンテンツタイプ編集画面を使用)に変更されているため、設定を変更していない標準状態で発生します。Movable Type 8 では既定値が 1 のため通常は発生しませんが、mt-config.cgi で UseRiot 0 を明示的に設定している場合は同じ条件になります。
影響を受けないケース
以下の場合は影響を受けません。データの消失や表示の異常は発生しないため、そのままご利用いただけます。
- Movable Type や ScheduleField をバージョンアップしただけで、コンテンツタイプを保存していない場合。 コンテンツタイプに保存済みの入力項目はそのまま残り、コンテンツデータ編集画面の入力欄も従来どおり表示され、入力・保存も正常に動作します。
- コンテンツデータの作成・編集・保存。 本件はコンテンツタイプ(設定側)の保存処理に関するもので、コンテンツデータ側の操作は対象外です。
- Movable Type 8 系の標準状態でのご利用。
影響を受けるケース
- コンテンツタイプ編集画面で「保存」を実行した場合。 スケジュールフィールドの設定を変更していなくても、他のフィールドの追加・変更やコンテンツタイプ名の変更など、別の目的で保存した場合も入力項目が消えます。
そのため、v1.3.0 / v1.3.1 をご利用で現在は問題が起きていない場合でも、今後コンテンツタイプを保存した際に発生する可能性があります。本バージョンへの更新をおすすめします。
アップデート後にお願いしたい作業
- 回避策として mt-config.cgi に
UseRiot 1を設定されていた場合は、削除いただけます。 - 古い JavaScript がブラウザにキャッシュされている場合があるため、コンテンツタイプ編集画面でスーパーリロード(Shift +再読み込み)をお試しください。
- すでに「入力項目」が消えてしまったスケジュールフィールドは、コンテンツタイプ編集画面で入力項目の再登録をお願いいたします。
再登録の際、元と同じ「ハンドル」名で登録いただければ、各コンテンツデータに入力済みのスケジュールのデータはそのまま表示が復元されます。元のハンドル名が不明な場合は、テンプレートでの出力(JSON のキー名)や、コンテンツデータ編集画面の「データを表示」で確認できます。
インストール
zip ファイルを展開し、以下の2つを Movable Type のインストール先の同名ディレクトリへ上書きアップロードしてください。
plugins/ScheduleFieldmt-static/plugins/ScheduleField
クラウド環境など PSGI 環境でご利用の場合は、差し替え後に Movable Type の再起動をお願いいたします。