legacy-knowledge-base
公開されました Sep. 10, 2025

利用規約に再度同意する方法

written-by

Ankit Gupta

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

legacy-article

learn-legacy-article-disclaimer-text

問題

  • ユーザーにもう一度、利用規約に同意してもらいたい。

環境

  • Liferay DXP 7.0

解決

Liferayの基本機能には、"利用規約 "ページを2回目に有効にする機能はありません。2回目の"利用規約"ページを有効にするには、データベースのuser_テーブルのAgreedToTermsOfUseカラムを修正する必要があります。このカラムはデフォルトでは "0 "に設定されており、ユーザーが "同意する"をクリックすると、このカラムは "1 "に変換されます。

したがって、Liferay API UserLocalServiceUtil.updateAgreedToTermsOfUse(args)を使用してuser_テーブルのAgreedToTermsOfUse列の値を更新するか、以下のgroovyスクリプトを実行してuser_テーブルのAgreedToTermsOfUse列の値を更新することができます。

以下は、全ユーザーのAgreedToTermsOfUseの値を "0 "に更新するgroovyスクリプトです。 以下はgroovyスクリプトを実行するための手順です。
1) 管理者としてログインし、コントロールパネル-->サーバー管理者-->スクリプト-->"Groovy "を選択します
2) 以下のGroovyスクリプトを貼り付けて、実行をクリックします

import com.liferay.portal.kernel.model.User;
import com.liferay.portal.kernel.service.UserLocalServiceUtil;

import java.util.List;

/**
* The following code will get all of the users.
**/
List<User> Users = UserLocalServiceUtil.getUsers(-1, -1);

for(User user : Users) {
/**
* If you want some special users enable the Terms & Condition page again, you
* should add conditions, eg. user.getFullName.equals("Jack Lee"), user.isActive().
**/
if(user.isAgreedToTermsOfUse()) {
UserLocalServiceUtil.updateAgreedToTermsOfUse(user.getUserId(), false);
}
}

結果

上記のスクリプトを実行すると、すべてのユーザーは再び「利用規約」のページを取得することになります。

 

追加情報

上記の手順を実行する前に、以下の手順を確認することをお勧めします:

1) groovyスクリプトを実行する前にデータベースのバックアップを取っておくと、何かあったときにデータベースを復元することができます。

2) portal-ext.propertiesで "terms.of.use.required "がtrueである必要がありますが、デフォルトではtrueに設定されています。したがって、"terms.of.use.required "がportal-ext.propertiesに無い場合は問題ありませんが、portal-ext.propertiesで "terms.of.use.required=false "が設定されていないことを確認する必要があります。

3) 特定のユーザーに対して"利用規約"ページを再度有効にしたい場合は、利用規約を再度有効にしたいユーザーに対して条件を追加する必要がありますので、Groovyスクリプトのコメント部分を参考にしてください。

4) 検証環境で報告された動作をテストしてから、お客様の判断で本番に移行してください。

5) この解決策にはカスタマイズが必要であり、チームの裁量でのみ実装する必要があります。 Liferayサポートでは、カスタマイズの設計や実装をサポートすることはできません。

 

did-this-article-resolve-your-issue

legacy-knowledge-base