Ver. 3.2.20 & Ver. 3.1.72 & Ver. 3.0.58 リリースのお知らせ
この記事では、2026年5月11日にリリースした Ver. 3.2.20 と Ver. 3.1.72、Ver. 3.0.58 の変更内容について紹介いたします。
現在お困りの問題に該当する項目がありましたら、お早めにバージョンアップのご検討をお願いいたします。
リリースノート
Ver. 3.2.20 の変更点
fetured
CMS-7569 カテゴリーをフラットな構造で出力する Category_Flat / V2_Category_Flat モジュールを追加
CMS-7582 ログインなどの認証系URLを固定するオプションを追加
CMS-7599 ブロックエディターのレイアウト機能に「1カラム枠」を追加
CMS-7604 ユーザーCSVインポートの機能拡張(user_mail空許可・user_codeヘッダー不要・カスタムフィールドキー更新対応)
CMS-7627 Field_Search::fromPost() を導入し POST から直接 ACMS_Filter で絞り込めるように改善
CMS-7634 Drawer UI ライブラリの追加と Modal/Drawer のテストコード整備
changed
CMS-7632 API 機能で出力するログのレベルを見直し
CMS-7635 ブロックエディターの画像・ファイル出力を絶対URLに変更
CMS-7637 CSVインポート機能など非アップロードファイルのメディア登録に対応するため、Image/Media Helper の $_FILES 依存をコアロジックから分離
CMS-7643 Develop テーマを v1.0.9 にバージョンアップ
fixed
CMS-7553 ユニット削除、ファイル差し替え、承認フローで物理ファイルが残る問題を修正
CMS-7572 承認前のエントリーから新規バージョンを作成して未来公開エントリーのバージョンを作成して承認すると、承認時点で承認前のエントリーが公開されてしまう問題の修正
CMS-7594 v1テンプレートの Topicpathモジュールで entryField が出力されない問題
CMS-7596 メディアのステータスがエントリーの公開情報に従う場合ブロックエディターが考慮されていない問題
CMS-7597 S3連携でファイルが正しく取得できなかった場合PHPエラーを吐いてしまう問題
CMS-7600 PageGenerationService::run() の戻り値型が厳格化されていない問題の修正
CMS-7601 エントリー管理のURLコンテキストで page などの予約語がカスタムフィールド値として誤検知される問題の修正
CMS-7602 v3.2.0 より Entry_Body / Entry_Continue / Unit_List / User_Search で moduleField の出力ができない問題を修正
CMS-7603 モジュール API (v1) を使って JSON を取得したときに、モジュールフィールドの値が返ってこないことがある問題の修正
CMS-7605 エントリー管理画面と編集画面で公開日時・掲載期限の項目名が不一致になっている問題の修正
CMS-7606 「CMS-7437 配置 v1 を利用していると画像やメディアユニットの表示が崩れる問題の修正」の対応漏れ及び、配置 v1 利用時は地図ユニットや動画ユニットも Ver. 3.1 のHTMLで出力するように修正
CMS-7608 モジュールIDの引数に複数のIDを登録すると指定したIDが途切れる問題を修正
CMS-7615 キャッシュ設定ページのタイトルを修正
CMS-7622 2段階認証の復号に失敗した時PHPエラーが発生する問題を修正
CMS-7623 ライセンスのチェックで、タイミングによっては、瞬間的にライセンスが読み込めず500エラーになってしまう問題を修正
CMS-7624 一部の異常終了時に正しいHTTPステータスコードとキャッシュ無効化ヘッダーを返すように修正
CMS-7625 Comment_Body でuidからメールアドレスを取得するときにPHPエラーが発生する問題
CMS-7626 Mailer のエラーが詳細にエラーログへ出力されない問題を修正
CMS-7628 組み込みモーダル機能の閉じる動作が機能しない問題の修正
CMS-7629 PageGenerationService が Content-Encoding: gzip を解凍しないため、zlib.output_compression が有効な環境(Xserver 等)でテンプレート取得結果が文字化けする問題の修正
CMS-7630 V2_Category_Tree で「エントリーが登録されていないカテゴリーも表示する」のチェックを外しても、エントリーがないカテゴリーが表示されてしまう問題の修正
CMS-7631 Twig テンプレートを有効にしている場合、エントリーのダイレクトタイトル編集機能が動作しない問題の修正
CMS-7633 Windows 環境で同梱の .htaccess だと WebP 画像が表示されない場合がある問題の修正
CMS-7636 ACMS_POST_Entry_Mail に bid パラメーターを eid パラメーターで指定したエントリーの所属するブログIDと異なるブログIDを指定すると送信に失敗する問題の修正
CMS-7638 エントリー本文の API 出力及び V2_Entry_Body における URL 変換の誤動作を修正
CMS-7639 CSVインポートでカスタムフィールドのブロックエディタータイプが保存されない問題の修正
security
CMS-7640 PHP ライブラリのアップデート
Ver. 3.1.72 の変更点
security
CMS-7641 phpライブラリのアップデート
Ver. 3.0.58 の変更点
security
CMS-7642 phpライブラリのアップデート
リリースノートの補足
CMS-7569 カテゴリーをフラットな構造で出力するCategory_Flat / V2_Category_Flat モジュールを追加
カテゴリーを 階層の入れ子ではなく、1 列のフラットなリストで出力 できるモジュール Category_Flat と V2_Category_Flat を追加しました。
これまでのカテゴリー系モジュールは、親子関係を入れ子の <ul> で表現する前提でした。今回追加した Flat 系モジュールは、ループの各要素に「階層の深さ(depth)」を持たせて 1 列で並べるため、
カテゴリー一覧をテーブル形式で並べたい
<select>のオプションとして 1 階層に潰したい入れ子の
<ul>ではなく、CSS のpadding-leftだけで階層感を出したい
といった、入れ子の HTML が逆に扱いにくいケースで重宝します。
表示順、件数表示、サブカテゴリーの件数を加算するかどうか、表示する階層の深さ、カスタムフィールドや位置情報の同時取得などは、V2_Category_Tree や Category_List と同じ感覚でモジュールIDから設定できます。
新規構築では Twig ベースの V2_Category_Flat の利用がおすすめです。
CMS-7582 ログインなどの認証系 URL を固定するオプションを追加
ブログ単位で、ログイン関連の URL を絞り込める 2 つのオプションを追加しました。
ログイン禁止(
deny_blog_login) そのブログでは、ログイン画面を表示せず、認証関連の処理も一切受け付けなくなります。ユーザーをルートブログでのみ管理したい場合に有効です。誤って全ブログを締め出さないよう、ルートブログでは禁止にできない仕様です。ログイン画面固定(
fix_login_url) ログインなどの認証系画面・処理を、ブログトップ直下の URL(例:https://example.com/login/)に固定します。
これまでの a-blog cms では、URL の末尾に /login/ を付ければ どの階層からでもログイン画面が開けてしまう という仕様でした。たとえば次のような URL がすべてログイン画面として有効になります。
https://example.com/login/https://example.com/news/login/https://example.com/news/2026/05/login/https://example.com/blog-a/category-a/sub/login/
普段の運用ではあまり意識しないところですが、ログイン URL に対して WAF・基本認証・IP 制限・アクセスログ監視・不正ログイン検知 などのセキュリティ対策を入れたい場合に、これが大きな悩みのタネになっていました。「ログイン URL を 1 つに守ればよい」という前提が崩れ、対策側で「/login/ を含むすべての URL」を網羅しないといけなくなるためです。
「ログイン画面固定」を有効にすると、ブログトップ直下の正規 URL でのみ認証系画面・処理が受け付けられる ようになり、それ以外の階層付き URL は 404 になります。これにより、WAF のルールや IP 制限の設定対象を 1 箇所に絞れる、アクセスログ監視も対象 URL をシンプルに指定できる、といった形でセキュリティ運用がぐっと楽になります。
対象になるのは、管理画面ログイン・会員サインイン・サインアップ・パスワードリセット・二要素認証の復旧画面など、認証に関わる一連の画面と POST 処理です。
互換性のため、アップデートでは両オプションともオフ、新規インストールでは両オプションともオン が初期値となります。既存サイトで有効化する際は、ブログ内で独自に /category/login/ のような URL を案内している箇所がないか、念のため確認しておくと安心です。
CMS-7599 ブロックエディターのレイアウト機能に「1 カラム」を追加
ブロックエディターのレイアウトに、新しく 「1 カラム」 を追加しました。
これまでは「2 カラムに分割」「3 カラムに分割」の 2 種類でしたが、今回の 1 カラムは「分割しない 1 つの枠」をブロックとして配置できるものです。横並びにはなりませんが、テーマ側の CSS で枠線・背景色・角丸・パディングを当てておけば、編集者が 「囲み枠」や「強調ボックス」をカンタンに挿入できる ようになります。
利用するには、編集画面設定 > ブロックエディター設定 >ブロックメニュー設定で「1 カラム」を有効化してください。
CMS-7604 ユーザー CSV インポートの機能拡張
ユーザー CSV インポート機能を、エントリー CSV インポートと揃える形で拡張しました。
user_code や user_mail を省略できるように
これまで必須だった user_code と user_mail の指定が 任意 になりました。
user_codeを省略した場合は、自動採番された値(user-[uid]形式)が入ります。user_mailを空欄でインポートした場合は、デフォルト値(user-[uid]@example.com形式)が入ります。
メールアドレスを持たないユーザーの一括登録や、外部システムから ID 連携で取り込むケースで使いやすくなりました。
カスタムフィールドをキーにして既存ユーザーを上書きできるように
CSV のヘッダー名の先頭に *(アスタリスク)を付けることで、そのフィールドの値を 「既存ユーザーを特定するキー」 として扱えるようになりました。
たとえば *member_id というヘッダーで M-00123 という値を渡すと、
member_idフィールドがM-00123のユーザーがいれば、そのユーザーを上書きいなければ、新規ユーザーとして作成
該当ユーザーが複数いた場合は、処理を中断してエラー
という挙動になります。CMS 側の user_id を持たない外部システム(社員番号・会員番号など)との同期で、CSV に CMS 内部 ID を持ち回らなくて済むようになります。
なお、この機能は プロフェッショナル以上のライセンス で動作します。
新規ユーザーの初期パスワードをランダム値に変更
user_pass 列を省略または空欄にして新規ユーザーを作成した場合、これまでは user_id から推測可能な値が初期パスワードとして設定されていました。本バージョンからは 予測不能なランダムな初期パスワードが自動生成 されます。
インポートされたユーザーは、パスワードリセットなどで本人がパスワードを設定し直してからログインする運用となりますので、初期案内のフローを併せてご検討ください。なお、既存ユーザーの更新時 に user_pass を省略・空欄にした場合は、これまで通り既存のパスワードがそのまま維持されます。
最後に
該当する問題がございましたら、できるだけ早めのバージョンアップをご検討ください。
今後もご報告いただいた内容に対して真摯に受け止め修正と改善を行ってまいります。
今後ともどうぞよろしくお願いいたします。