In this article, we will guide you on how to delete all wpForo posts for a specific user directly from the database. This might be necessary in cases where a user has left many unwanted posts on your forum.


Before you proceed, please ensure that you have the following:
– Access to your WordPress database (usually through phpMyAdmin or a similar tool).
– The ID of the user whose posts you want to delete.


Manipulating the database directly can lead to data loss or corruption if not done correctly. Always make sure to have a recent backup and verify the commands before executing them. If you are not comfortable with SQL, consider seeking help from a professional or use the built-in functions in the WordPress dashboard.


  1. Log in to your database management tool (like phpMyAdmin).
  2. Select your WordPress database.
  3. Open the SQL command window.
  4. Enter the following SQL command, replacing user_id with the actual ID of the user:
FROM wp_wpforo_posts p
JOIN wp_wpforo_topics t ON p.topicid = t.topicid
WHERE p.userid = user_id;
  1. Execute the command.

This command will delete all posts and their associated topics created by the user with the ID user_id.


You have now learned how to delete all wpForo posts for a specific user. Remember, this operation is irreversible. Once you delete the posts, you cannot recover them. Therefore, it’s recommended to backup your database before running this command.

Also, please note that this command does not delete the user account itself. If you want to delete the user account as well, you would need to use a different command or use the WordPress dashboard.