how to ban users the right way?


Well-known member

I have 2 issues with banning users.

First those which are banned already:

I merged/imported many vb forums into a single XF forum. Now I have obviously many usergroups called "banned users".

In the original XF1.13 setup, there are only 4 usergroups. None of them deals with banned users.

Administrative Administrator
Moderating Moderator
Unregistered / Unconfirmed Guest

If I would now delete all my imported banned usergroups. XF would move all users of these groups into the usergroup "registered". I do not want that of course.

a) So how can I move all users from those 10 different usergroups "banned" into one new group called banned?

b) Do they need to be in a primary group "banned" or do they need to belong as a primary group to "regsitered" and as a secondary group additional to a group called "banned"?

c) If the belong to two usergroups (as described in b), how can I make sure that they haveno rights to post or read anymore, since the primary usergroup is still "registered"?

Second, I have a problem to understand the way to go forward in the future, in case I want to ban a user. How can I ban a user called "smith", so that he is banned forever and is shown in the ACP in the banned usergroup? (users/user discipline/banned users)

lazy llama

Well-known member
a) You could use a Usergroup Promotion to "promote" all members of any of the various banned user groups to a definitive one
b) In Xenforo "banned" isn't a usergroup, it's a separate state on each account. They can be "banned" but not in a "banned" user group (and vice versa).
c) In "User Discouragement and Discipline" options you can set an "Add User Group on Ban" which automatically adds a user to that usergroup when theyare banned. You then ensure that the permissions for that group has "Never" set for most permissions. "Never" overrides other permissions.

For your second question, see the answer to (c)


Well-known member
Thanks for the explanation. I did that now (point c) for future bannings and it works. The only problem is with (a), that for usergroup promotion, there is a time restriction in the code. You only can promote if the user in this usergroup was active within the last x-hours. MOst of the suers in my banned usergroups are inactive for years (spammers).

I have seen in another thread a code modification to disable this time restriction. But I have not decided yet, whether I want to do that.