これは、Discourse の「maximum session age」(最大セッション有効期間)というサイト設定で制御されます。この設定のデフォルト値は 1440 時間です。非常に小さな値に設定しない限り、ユーザーをログアウトさせる信頼性の高い方法ではありません。なぜなら、これはユーザーの「最後の訪問」からログイン状態が維持される時間を設定するものだからです。また、「maximum session age」を非常に短い時間に設定すると、サイト利用者にとって不便を招く可能性があります。
メンバーシップの有効期限が切れた際に API を通じてユーザーを Discourse からログアウトさせるのが、最も良いアプローチだと考えられます。その方法のコード例は、こちらにあります:wp-discourse/lib/sso-provider/discourse-sso.php at main · discourse/wp-discourse · GitHub API を呼び出してユーザーをログアウトさせる処理を実装するには、開発者のサポートが必要になるかもしれません。