Movable Type 7 r.4502 リリースノート
このバージョンでは、セキュリティー上の問題となりうる課題が修正されています。 アップデートを行う際には、データベースのバックアップを必ず取得したのち、上書きアップデートではなく別ディレクトリーへインストールする形でのアップデートを強くおすすめします。
セキュリティー修正
- [MTC-25202][MTC-25201] 圧縮されたファイル(tar.gz または zip)にシンボリックリンクや絶対パスが含まれているとき、解凍時にエラーとなります。
新機能・改善された機能
管理画面のモバイルデバイス対応
管理画面をモバイルデバイスから閲覧したときの見易さと、操作性が向上しました。
モバイルデバイスからの閲覧時は、コンテンツデータの作成と管理、記事の作成と管理、ウェブページの作成と管理、アセットのアップロードと管理、カテゴリ、カテゴリセットの管理をおこなうことができます。また、モバイルデバイスへの最適化は行われませんが、「PC 表示」を利用することでコンテンツタイプの編集や、テンプレートの編集などすべての機能が利用できます。
コンテンツタイプに関連するテンプレートタグがダイナミック・パブリッシングに対応
MTContents をはじめとするコンテンツタイプに関連したテンプレートタグが、ダイナミック・パブリッシングに対応しました。コンテンツタイプに関連したタグの一覧は MovableType.jp でご確認ください。
グループ管理をコア機能に
Movable Type Advance で提供していたユーザーのグループ管理機能を Movable Type のコア機能として提供します。
グループ管理機能を利用すると、ユーザー単位だけではなく、グループ単位で権限を管理できるので、新しいユーザーが追加されたときや、ユーザーの所属が変わったときなどのときに、適切なグループへユーザーを参加させたり、グループから削除することでユーザーの権限を管理することができます。
サーバー配信
即時配信をバックグラウンド処理に変更
これまでのバージョンでは、即時配信を実行するとブラウザー上でリアルタイムに処理を行っていました。しかし、対象となるファイルの数が膨大な場合に処理がタイムアウトする問題が発生していました。 この問題を解決するために、ブラウザー上でのリアルタイム配信から run-periodic-tasks を利用したバックグラウンド配信に処理方法を変更しました。
即時配信を登録すると、次回の run-periodic-tasks 実行時に配信処理が実行されます。配信を開始したときには、通知メールが送信されます。
run-periodic-tasks を定期的に実行していない環境では、即時配信が行われません。
この変更に伴い、いくつかの注意点・制限事項があります。
- 複数のサーバー配信設定について即時配信を実行した場合は、登録された順に処理が実行されます。
- 同一のサーバー配信設定について、即時配信より先にスケジュール配信が実行された場合は、即時配信は実行されません。
認証エラーの明確化
FTP サーバーへの接続時にユーザー認証エラーだった場合の、エラーメッセージを適切なものに変更しました。
TLS 1.1 / 1.2 の対応
FTP over SSL で FTP サーバーと接続するとき、TLS 1.1 / 1.2 を利用した接続が有効になりました。
クラウド版
FTP でのみアクセス可能なディレクトリの利用が可能に
「/files」というディレクトリが新たに利用できます。このディレクトリは、ウェブからアクセスすることができない安全なユーザーデータ領域として利用できます。 ただし、このディレクトリのファイルは利用可能なユーザーディスク領域に含まれるため、多くのファイルを設置すると、ウェブで利用できる領域が減りますのでご注意ください。
パフォーマンス改善
- [MTC-25815] 再構築トリガーが設定されているとき、記事の投稿に時間が掛かる問題を解決しました。
開発者向け
- [MTC-25710] すべてのコンテンツデータに共通する list_properties と list_actions を定義できるようになりました。list_properties > content_data または list_actions > content_data の下に定義します。
追加されたコールバック
begin_content_delivery
サーバー配信実行時、実際にファイルをやり取りする直前に呼ばれます。
パラメーター
- $cb
- コールバックオブジェクト
- $blog_id
- 対象のサイトID
- $setting_id
- 処理対象となる配信設定のID
- $trigger
- SyncScheduled … スケジュール配信
- SyncNow … 即時配信
- $force
- 即時配信ですべてのファイルの同期が選択されているとき 1 が入ります
finish_content_delivery
すべてのサーバー配信処理が正常に終了した場合に呼ばれます。
パラメーター
- $cb
- コールバックオブジェクト
- $blog_id
- 対象のサイトID
- $setting_id
- 処理対象となる配信設定のID
- $trigger
- SyncScheduled … スケジュール配信
- SyncNow … 即時配信
content_delivery_file_filter
サーバー配信の対象となるファイルのリストをフィルタリングする目的で利用できます。
パラメーター
- $cb
- コールバックオブジェクト
- $blog_id
- 対象のサイトID
- $setting_id
- 処理対象となる配信設定のID
- $file_list
- 対象となるファイルの一覧が含まれる配列。この変数の内容がサーバー配信のとき処理される
その他
- [MTC-25599] MTSiteIfCCLicense タグが追加されました。動作は、MTBlogIfCCLicense タグと同様です。
変更された機能
クラウド
- [MTC-25971] 画面フッターの「サポート」「フィードバック」のリンク先を変更しました。
- [MTC-25636] MT環境変数を設定するとき、いくつかの環境変数が保存できない問題を解決しました。
コンテンツタイプ
- [MTC-25902] MTContents タグでは、include_sites / exclude_sites / include_blogs / exclude_blogs / blog_ids / site_ids モディファイアーは利用できません。これらのモディファイアーについては、将来のバージョンで再実装される予定です。
テンプレートタグ
- [MTC-25498] MTContentAuthorLink タグで type モディファイアーに author を指定したとき、これまでは、記事のユーザー・アーカイブにリンクされていましたが、コンテンツタイプ・ユーザー別アーカイブにリンクされるように変更されました。
- [MTC-25480] MTContents タグにおいて、limit モディファイアーに auto を指定するか、何も指定がないとき、サイト設定の記事の読み込み数設定が利用されていましたが、これを廃止しました。指定がない場合は 10 が初期値となり、auto は無効です。
その他
- [MTC-25751] Net::FTPSSL のバージョンが上がりました。
- [MTC-25663] ADOdb のバージョンが v5.20.12 にアップデートされました。
- [MTC-25600] MTPingSiteName タグは削除されました。MTPingBlogName タグが引き続き利用できます。
- [MTC-25598] MTSiteIfCommentsOpen タグは、Comments プラグインが提供するテンプレートタグになりました。Comments プラグインが無効になっている場合は、利用できません。
- [MTC-25484] CPAN モジュールへのリンク先が search.cpan.org から metacpan.org に変更されました。
修正された問題
Data API
- [MTC-25639] authorization メソッドで呼び出される認証フォームで JavaScript エラーが発生している問題を解決しました。
- [MTC-25526] Data API 経由で作成されたユーザーが管理画面にサインインできない問題を解決しました。
アセット
- [MTC-25908] 画像ポップアップ用のテンプレートが存在しないとき、画像の挿入時に「ポップアップウィンドウで元の大きさの画像にリンクします」オプションを有効にして挿入するとエラーになる問題を解決しました。
- [MTC-25807] アセットのアップロードに失敗したとき、プログレスバーが動作し続ける問題を解決しました。
- [MTC-25595] アセットの挿入オプションモーダルで、画像以外のアセットの際にサムネイルが標示されない問題を解決しました。
インポート・エクスポート
- [MTC-25835] コンテンツタイプアーカイブを含むエクスポートデータをインポートするとき、カテゴリーフィールド、日付と時刻フィールドの設定が正しくインポートされない問題を解決しました。
- [MTC-25831] インポート時のモーダルウィンドウのマークアップが正しくない問題を解決しました。
- [MTC-25606] サイトデータをインポートするとき、エラーが発生している問題を解決しました。
- [MTC-25584] サイトデータをインポートしたとき、テンプレートとコンテンツタイプの紐付けが更新されない問題を解決しました。
開発者向け
- [MTC-25940] コンテンツデータの list_properties の部分書き換えができない問題を解決しました。
- [MTC-25939] cms_pre_load_filtered_list.content_data コールバックのデータソースが正しくない問題を解決しました。
- [MTC-25909] プラグインで拡張されたコンテンツデータのフィルターが適用されない問題を解決しました。
- [MTC-25906] コンテンツタイプのシステムフィルターにプラグインから追加できない問題を解決しました。
- [MTC-25867] cms_save_filter.content_data コールバックが呼び出されない問題を解決しました。
- [MTC-25844] コンテンツタイプに関連するアーカイブを再構築したとき、mt_fileinfo のレコードが生成されない問題を解決しました。
- [MTC-25834] コンテンツデータを更新したとき、mt_fileinfo のレコードが更新されない問題を解決しました。
- [MTC-25513] MT::ContentsData クラスにプラグインからカラムを追加できない問題を解決しました。
カテゴリセット
[MTC-25560] カテゴリセット一覧において、利用されているコンテンツタイプの数が正しくカウントされていない問題を解決しました。
記事・ウェブページ
[MTC-25930] 定型文の概要が長いとき、スタイルが崩れる問題を解決しました。
- [MTC-25865] 記事編集画面において、ステータスを表すアイコンが表示されていない問題を解決しました。
- [MTC-25864] 履歴一覧モーダルにおいて、現在選択されている行がわかりにくい問題を解決しました。
- [MTC-25579] リッチテキストを利用しているとき、HTML 編集モードに切り替えると入力内容がクリアされてしまう問題を解決しました。
- [MTC-25497] 記事の本文中に トラックバック先 URL が存在するとき、エラーが発生する問題を解決しました。
クラウド
- [MTC-25635] MT環境変数を設定するとき、いくつかの環境変数が保存できない問題を解決しました。
権限とロール
- [MTC-25257] ロールの編集画面において、権限の並び順が読み込むたびに変わる問題を解決しいました。
コメント・トラックバック
- [MTC-25508] コメント、トラックバック一覧において、ステータスによるフィルターが動作しない問題を解決しました。
コンテンツタイプ
- [MTC-25984] テキスト型のフィールドにおいて、エスケープ処理が適切に行われない問題を解決しました。
- [MTC-25976] コンテンツデータの編集画面において、画面がスクロールして画面外のテキスト(複数行)フィールドに勝手にフォーカスが当たる問題を解決しました。
- [MTC-25920] コンテンツタイプを削除したとき、エラーが発生する問題を解決しました。
- [MTC-25914] カテゴリセットに含まれるカテゴリを選択したコンテンツデータが存在するとき、コンテンツデータとカテゴリのリンクが解除されずに再構築時にエラーが発生する問題を解決しました。
- [MTC-25896] テキスト(複数行)型のフィールドにおいて、フォーマットを変更するとエラーが発生する問題を解決しました。
- [MTC-25884] 埋め込みテキスト型のフィールドにおいて、必須入力チェックが正しく行われない問題を解決しました。
- [MTC-25877] コンテンツデータの一覧画面において、表示項目から「公開日」「更新日」「削除日」が選択できない問題を解決しました。
- [MTC-25874] MTContentLabel タグがプレビュー時に正しい値を出力しない問題を解決しました。
- [MTC-25872] コンテンツデータのプレビューから編集画面に戻るとき、プレビュー前に変更されたデータ識別ラベルの変更が反映されない問題を解決しました。
- [MTC-25869] コンテンツデータのプレビュー HTML 内に不要な INPUT 要素が含まれる問題を解決しました。
- [MTC-25868] コンテンツデータの編集画面において、URL に不要なパラメーターを付与するとエラーになる問題を解決しました。
- [MTC-25862] コンテンツタイプに対応するアーカイブが存在しない場合でも、コンテンツデータ一覧において、アーカイブファイルへのリンクが表示される問題を解決しました。
- [MTC-25850] インデックス・テンプレートにおいて、MTContents タグに content_type モディファイアーを指定しないときでもエラーにならない問題を解決しました。
- [MTC-25848] ブロックエディターがインストールされているとき、検索と置換から置換が行われない問題を解決しました。
- [MTC-25847] コンテンツタイプが複数存在するとき、コンテンツタイプ・アーカイブのプレビュー結果が正しくない問題を解決しました。
- [MTC-25832] システムレベルの「コンテンツデータの管理」権限を有しているときでも、コンテンツデータの管理ができない問題を解決しました。
- [MTC-25824] コンテンツデータ一覧にデータが表示されないときがある問題を解決しました。
- [MTC-25732] コンテンツデータ一覧画面において、コンテンツタイプ型のフィルターが作用していない問題を解決しました。
- [MTC-25729] PreviewInNewWiindow 環境変数が 0 のとき、コンテンツデータのプレビュー画面で「編集」や「保存」をクリックするとエラーが発生する問題を解決しました。
- [MTC-25719] コンテンツデータの公開終了日を設定しているとき、公開終了日を過ぎてもステータスが公開中のままになる問題を解決しました。
- [MTC-25647] コンテンツデータの入力チェック時にエラーがあったとき、タグ型のフィールドの値が ID に変わってしまう問題を解決しました。
- [MTC-25630] テーブル型のコンテンツフィールドがあるコンテンツデータの更新履歴を表示するとき、エラーが発生する問題を解決しました。
- [MTC-25618] コンテンツデータの更新履歴モーダルにおいて、ステータスアイコンが表示されない問題を解決しました。
- [MTC-25608] コンテンツタイプ・アーカイブがアーカイブマッピング通りにアーカイブファイルを生成しない時がある問題を解決しました。
- [MTC-25585] コンテンツタイプ・アーカイブが存在しないとき、コンテンツデータのプレビューを行うと管理画面のトップページにリダイレクトされる問題を解決しました。
- [MTC-25576] コンテンツタイプ型のフィールドを持つコンテンツデータをプレビューするとき、エラーが発生する問題を解決しました。
- [MTC-25538] コンテンツデータの編集画面において、カテゴリセット型のフィールドにカテゴリがロードされない問題を解決しました。
- [MTC-25522] mt-cdsearch.cgi でコンテンツデータを検索するとき、数値型のフィールドの値が検索にヒットしない問題を解決しました。
- [MTC-25501] テキスト(複数行)フィールドのフォーマットに Markdown を指定したとき、再構築での出力結果が HTML に変換されない問題を解決しました。
- [MTC-25428] 時刻型のフィールドの入力欄についてフィールドのサイズを調整しました。
- [MTC-25427] 日付型のフィールドの入力欄についてフィールドのサイズを調整しました。
- [MTC-25426] 日付ベースのコンテンツタイプ・アーカイブについて、archive_class 変数の値が正しくない問題を解決しました。
- [MTC-25423] コンテンツタイプ・アーカイブにおいて、template_params 変数に archive_listing が有効になっている問題を解決しました。
- [MTC-11676] コンテンツデータの一覧画面において、表の横幅が長すぎる場合でもスタイルが崩れないように調整しました。
サーバー配信
- [MTC-25631] SSLVerifyNone または FTPSSSLVerifyNone に 1 を指定したときでも、サーバー証明書の検証が行われる問題を解決しました。
- [MTC-25568] Windows Server を利用しているとき、サーバー配信でエラーが発生する問題を解決しました。
- [MTC-25520] 何らかの理由によりサーバー配信プロセスが多重起動され一部のファイルが別のファイルで書き換わる問題を解決しました。
システム全般
- [MTC-25924] システムログフィードを取得したとき、エラーが発生する問題を解決しました。
- [MTC-25891] 公開キューを利用して再構築が実行されたとき、エラーが発生する問題を解決しました。
- [MTC-25870] サイトレベルで検索と置換をおこなったとき、システム全体で検索される問題を解決しました。
- [MTC-25861] 記事の投稿設定において。アセットの挿入オプションの規定の位置が保存されない問題を解決しました。
- [MTC-25855] 禁止 IP アドレスの登録画面において、IP アドレスではない値を保存できる問題を解決しました。
- [MTC-25809] ログのフィルタ項目「分類」の内容が判別しにくい問題を解決しました。
- [MTC-25604] SMTPPassword 環境変数の値に ? が含まれているとき、SMTP 認証が失敗する問題を解決しました。
- [MTC-25493] JS,CSS ファイルがブラウザのキャッシュによって読み込まれない問題を解決しました。
ダイナミック・パブリッシング
- [MTC-25803] Oracle Database を利用しているとき、MTAuthors タグに need_entry モディファイアーを指定した場合、正しい結果が得られない問題を解決しました。
テーマ
- [MTC-25495] theme.yaml において、name、description、category_field、category_set、content_type、datetime_field、source がテーマの適用時に翻訳されない問題を解決しました。翻訳を行う場合は、<__trans phrase="xxx"> と記述する必要があります。
テンプレート
- [MTC-25455] テンプレートの初期をおこなったとき、エラーが発生する問題を解決しました。
テンプレートタグ
- [MTC-25557] MTContents ブロックタグで 、データが 1 件もないときに MTElse が実行されない問題を解決しました。
- [MTC-25486] MTContentField タグにおいて、content_field モディファイアーで指定したフィールドが存在しないとき、エラーとならずに関係のないフィールドが利用されていた問題を解決しました。
- [MTC-25440] content_type モディファイアーに文字列を指定したとき、エラーが発生する事がある問題を解決しました。
ブロックエディター
- [MTC-25592] 利用言語が英語のとき、ブロック追加モーダルが正しく翻訳されない問題を解決しました。
- [MTC-25516] 画像ブロックへファイルをドラッグ&ドロップしたとき、アイコンがフッターに残ってしまう問題を解決しました。
- [MTC-25503] ブロックエディターからリッチエディターにフォーマットを変更したとき、TinyMCE が利用できなくなる問題を解決しました。
[MTC-25502] ブロックエディター利用時、JSファイルの読み込みで 404 エラーが発生している問題を解決しました。
リスティング・フレームワーク
[MTC-25554] フィルタ名を変更したとき、無用にエスケープされる問題を解決しました。
Thanks To
このリリースには Movable Type コミュニティーから報告された多くの、バグ修正、パッチ提供が取り込まれています。FogBugz / Jira を通じてパッチおよび、バグレポートを提供してくださったコミュニティーメンバーのお名前は以下の通りです。皆様のご協力に感謝します!(順不同、敬称略)
また、r.4501 でベータテストへご参加された皆さま、ご協力ありがとうございました。
- Makoto Tajima (MTC-25647, MTC-25639, MTC-25503, MTC-25502)
- 荒木勇次郎 (MTC-25618)
- 株式会社常盤商会 小林 (MTC-25595)
- 藤本 壱 (MTC-25579)
- Nakedsushi (MTC-25526)
- 関口 勇樹 (MTC-25501)
- 山中 伸夫 (MTC-25497)