v1.3.2 へのアップデート
v1.3.0 / v1.3.1 で発生していた「コンテンツタイプ保存時に入力項目が消える不具合」の内容と、アップデート後に必要な作業を説明します。
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 系の標準状態 / ScheduleField v1.2.x 以前 |
Movable Type 9 では、コンテンツタイプ編集画面が新方式に変更されているため、設定を変更していない標準状態で発生します。
影響を受けないケース
- Movable Type や ScheduleField をバージョンアップしただけで、コンテンツタイプを保存していない場合。 保存済みの入力項目はそのまま残り、コンテンツデータ編集画面の入力欄も従来どおり表示されます
- コンテンツデータの作成・編集・保存。 本件はコンテンツタイプ(設定側)の保存処理に関するもので、コンテンツデータ側の操作は対象外です
影響を受けるケース
- コンテンツタイプ編集画面で「保存」を実行した場合。 スケジュールフィールドの設定を変更していなくても、他のフィールドの追加・変更やコンテンツタイプ名の変更など、別の目的で保存した場合も入力項目が消えます
v1.3.0 / v1.3.1 をご利用で現在は問題が起きていない場合でも、今後コンテンツタイプを保存した際に発生する可能性があります。v1.3.2 への更新をおすすめします。
アップデート手順
plugins/ScheduleFieldとmt-static/plugins/ScheduleFieldを上書きアップロードします- PSGI 環境の場合は、Movable Type を再起動します
- コンテンツタイプ編集画面でスーパーリロード(Shift +再読み込み)を行います
アップデート後にお願いしたい作業
回避策の設定を削除する
回避策として mt-config.cgi に UseRiot 1 を設定していた場合は、削除いただけます。
消えた入力項目を再登録する
すでに「入力項目」が消えてしまったスケジュールフィールドは、コンテンツタイプ編集画面で入力項目を再登録してください。
再登録の際、元と同じ「ハンドル」名で登録いただければ、各コンテンツデータに入力済みのスケジュールのデータはそのまま表示が復元されます。
元のハンドル名がわからない場合は、次の方法で確認できます。
- テンプレートで出力している JSON のキー名を確認する
- コンテンツデータ編集画面の「データを表示」で、保存されている JSON のキー名を確認する