キャンセルされたメンバーシップの対応

Discourse API を通じてユーザーを停止(suspend)させるのが、この処理を自動化する良い方法かもしれません。ユーザーが停止されると、Discourse からログアウトされ、ダイジェストメールも送信されなくなります。停止時に message を指定すると、そのメッセージがユーザーにメールとして送信されます。これを使って、メンバーシップの更新を促すことができます。

注意点として、停止機能は問題のあるユーザーに対応するために設計されたものであり、将来更新される可能性のある期限切れのメンバーシップを扱うために設計されたものではありません。停止されたユーザーに送信されるメールのテンプレートをカスタマイズするために、サイト内の user_notifications.account_suspended.text_body_template テキストをカスタマイズする必要があるかもしれません。

匿名化されたユーザーが作成した投稿は、以下のように表示されます。

匿名化されたユーザーを元に戻す簡単な方法はありません。私が知っている唯一のアプローチは、Rails コンソールから匿名ユーザーを新しいユーザーとマージすることです。匿名化するとユーザーのすべての識別データが削除されるため、どのアカウントをマージすべきか特定するのが難しい場合があります。ユーザーがメンバーシップを更新する可能性がある場合は、ユーザーを停止させる方がよいアプローチでしょう。