ユーザー切り替え機能

a-blog cms Ver.2.9よりユーザー切り替え機能が実装されました。これにより権限が違うユーザーに切り替えて、そのユーザーでログインした時の挙動などを簡単に調べることができるようになりました。

使い方

管理画面 > ユーザー管理 に移動すると下の画像のようにユーザーを変更するためのボタンがみつかります。



切り替え後は、管理画面上部に「元のユーザーに戻る」というボタンが表示されるのでそのボタンを押していただくことで切り替え前のユーザーに戻ることができます。



ユーザーの切り替え条件

ただ、すべてのユーザーが好きなユーザーに切り替えられるわけではありません。ユーザーを切り替えるためのデフォルトの条件は以下になります。

  • ルートブログの管理者権限ユーザーであること
  • 切り替え先のユーザーの権限が管理者でないこと

また、private/config.system.yamlを編集すればユーザーの切り替え条件を変更することも可能です。



項目 設定値 デフォルト値 説明
switch_user_enable on / off on ユーザー切り替え機能を有効化
switch_user_permission root / all root ユーザー切り替えができる管理者設定(root=ルートブログの管理者のみ, all=全ての管理者)
switch_user_same_level on / off off 管理者ユーザーへの切り替えができるかの設定

Shoping Cart拡張アプリ アップデートのお知らせ 2023年7月


この記事では、ShoppingCart 拡張アプリ について、2023年7月12日にリリースした  Ver. 2.1.4 の内容について紹介いたします。

現在お困りの問題に該当する項目がありましたら、お早めにバージョンアップのご検討をお願いいたします。

Ver. 2.1.4 のリリースノート

Fixed

  • カートと受注情報の削除タイミングをシャットダウン時に実行するように変更
  • フォームIDのインポートデータが壊れている問題の修正

主なリリースノート内容

ShoppingCart 拡張アプリ Ver. 2.1.4 の内容について一部紹介いたします。

カートと受注情報の削除タイミングをシャットダウン時に実行するように変更

Ver. 2.1.4より、購入完了時のカート及び受注情報の削除をプログラムのシャットダウン時、つまりテンプレートの解決後に行うように修正いたしました。

Ver. 2.1.4 より前では ShoppingForm_Submit モジュールの処理内でカート及び受注情報の削除を行っていたため、テンプレートの解決時にはデータが既に削除されておりました。これにより、注文完了ページでは受注情報が表示できていなかった他、Slack拡張アプリChatWork拡張アプリ などで送信する通知内容で受注情報が参照できておりませんでした。

Ver. 2.1.4 以降では、上記の内容が改善されており、注文完了ページ及び、Slack 拡張アプリ、ChatWork拡張アプリで送信する通知内容でも注文データを参照することが可能になりました。


ChatWork拡張アプリで注文データが送信できている画像

ChatWork拡張アプリで注文データが送信できるようになりました。


最後に

該当する問題がありましたら、お早めにバージョンアップのご検討をお願いいたします。また、迅速にご報告いただいたユーザーの皆さま、誠にありがとうございました。

今後もご報告いただいた内容に対して真摯に受け止め修正と改善を行ってまいります。 今後ともどうぞよろしくお願いいたします。

モジュール

a-blog cms では、テンプレートである HTML にモジュールというパーツを記述して動作します。



テンプレートにはいくつでもモジュールを貼り付けることができますが、それらが一度に動作すると処理時間も長くなります。例えば0.1秒で動くモジュールが100個テンプレートに貼ってある場合は、表示に10秒かかることになります。しかし標準搭載のキャッシュ機能で、表示に10秒かかるページも2回目以降は瞬時に表示されますのでご安心ください。

どのようなモジュールがあるのかを知ることが、a-blog cms のカスタマイズスキル上達への近道です。モジュールには大きく分けると、「ビルトインモジュール」「フィールドモジュール」「タッチモジュール」の3種類があります。

ビルトインモジュール

基本的にモジュールと言えば、この ビルトインモジュール のことを指します。エントリー系の情報はもちろん、カテゴリー、ナビゲーション、バナー、トピックパス等いろいろなパーツを表示する際にも利用するものです。

<!-- BEGIN_MODULE Entry_List -->
<ul>
    <!-- BEGIN entry:loop -->
    <li><a href="{url}">{title}</a></li>
    <!-- END entry:loop -->
</ul>
<!-- END_MODULE Entry_List -->

モジュールは、<!-- BEGIN_MODULE モジュール名 --> から <!-- END_MODULE モジュール名 --> までが1つのシステムとして動作し、モジュールの中にモジュールを書くこともできます。この際のモジュールの実行順は内側が先になり、その後に外側のモジュールへと続きます。

これらのモジュールの記述例はスニペットとして提供していますので、まずは利用するスニペットをテンプレートファイルに貼り付けてみてください。

フィールドモジュール

登録したカスタムフィールドのデータを表示させるためには、基本的に以下のようなフィールドモジュール を利用する必要があります。

  • Blog_Field
  • Category_Field
  • Entry_Field
  • User_Field
  • Module_Field

しかしカスタムフィールドによっては、フィールドモジュールを使わずにビルトインモジュール内で利用するものもあります。

Entry_Body , Entry_Summary の entry:loop 内でフィールドモジュールを利用する際は、モジュールの設定画面からカスタムフィールドを有効にするよう設定しなければいけません。使わない時は、動作させないほうが処理が軽くなります。

タッチモジュール

表示、非表示を制御するモジュールです。制御したい部分を各 タッチモジュール で囲みます。

<!-- BEGIN_MODULE Touch_Login -->
    <!-- BEGIN_MODULE Admin_ActionMenu -->
    <p>ユーザー名:{name}</p>
    <!-- END_MODULE Admin_ActionMenu -->
<!-- END_MODULE Touch_Login -->

例えば、Touch_Login モジュールを利用する際には、ログインしている時のみ表示させたい部分を<!-- BEGIN_MODULE Touch_Login -->から<!-- END_MODULE Touch_Login -->で囲みます。ログインしていない時には、囲まれている部分は表示されないようになります。


各種モジュールの設定


モジュールの細かな設定については、テンプレート上ではなく管理ページ上で設定します。例えば、一覧の表示件数や表示順、画像を表示する際のサイズの指定等の各種設定が可能です。詳しくは次のコンフィグで説明します。