Are you ready to start syncing users between WordPress and XenForo? Well, you’re in luck because the first public beta of XFtoWP 1.2 is now available for download!
The star of this release is the widely requested user syncing feature which XFtoWP 1.2 beta comfortably delivers to your WordPress admin panel.
Alongside user syncing, this new release brings many helpful refinements across the entire user interface that makes XFtoWP an even more professional plugin.
In this guide I will walk you through what’s new in XFtoWP 1.2 beta, what you need to know to best test the plugin, and an ask to help me finish the rest of this version by providing your feedback!
First, let’s understand exactly what the idea of user syncing means.
What is XFtoWP User Syncing?
The first pillar to understand is that XFtoWP functions from your WordPress website, meaning it listens to actions performed on the WordPress side and changes them in XenForo, but not vice-versa.
At its core, the following critical actions can be synced once performed from WordPress to XenForo:
- User registration
- Change user email address
- Change user password
- Delete user
These are the important fundamentals necessary to create a tight integration and best create a truly unified user experience across your websites.
To keep the integrity of these details consistent across websites it is important to ensure the above actions are only performed from WordPress. That means disabling registrations and password/email updates in XenForo, which I will show you later in this article.
Let XFtoWP to be the bridge that keeps your user’s important account details in sync across websites, and with a slight change in admin and user workflows you can now easily achieve this with User syncing.
Why? We want our users to jump from our main website to our forums effortlessly, and that is the core promise of XFtoWP’s user syncing.
With the primer out of the way let’s now see what other new workflows and user management controls are available in XFtoWP 1.2 beta.
New API user capabilities and usergroups syncing
Can you believe I am starting this exciting features tour with such a nerdy term like API? Well, it’s important to know that before trying these new features that you first upgrade your API user’s permissions respectively.
As you will also see in the Site Setup section, the following API permissions are needed for all of XFtoWP’s user syncing features to be fully functional:
It is also important to note that you must use a Super User API Key to:
- Send alerts (alert:write)
- Generate auto-login links (auth:login-token)
Also keep in mind that your API user can only perform the actions the account you assign it from the forums can do.
For example, an API user who is not an admin and does not have any user editing capabilities in XenForo cannot create new users with XFtoWP.
Finally, as a best security practice it is recommended to only give your API user the permissions you require for the features you need. To best reflect this practice, XFtoWP will adapt to your current API user’s capabilities and only show you what controls you can actually use.*
*This statement does not yet fully apply to XFtoWP1.2 beta.
The keen among you will also notice the new “Usergroups” tab which allows you to add the usergroups from your XenForo site you wish to place user’s intro upon registration and account sync.
The usergroup IDs must match the usergroup as created in XenForo, and you should only add the groups you wish to add and remove user’s from in WordPress. The group name can be labeled however you choose, and it is recommended to keep the names the same for good housekeeping.
As of writing, there is no way to automatically import user groups so this manual process has been created.
How to Enable User Syncing
The workflow of syncing user data across websites can be quite sensitive, so the major user actions listed above can be enabled or disabled individually to best match your needs from the new User Actions settings panel:
Maybe most importantly, if you don’t require or are not yet ready for these capabilities on your website then you don’t have to turn anything on.
You can trust XFtoWP will not overstep its boundaries by performing actions you don’t need, and this interface gives you the power to configure the full range of features on an as-needed basis.
Now that we’re warmed up, let’s really see what XFtoWP 1.2 beta can do.
Create Automation Workflows with User Actions
With the incredibly powerful User Actions settings you will now save countless hours manually promoting, demoting, and messaging user’s as your WordPress website will now do the heavy lifting for you.
The screenshot above illustrates what action should be performed on user registration. In this case the user will be promoted to the Customer usergroup in XenForo and will also start a new conversation sent from the API user.
Do you see how this is starting to all come together?
In the first beta release of XFtoWP 1.2 you will be able to capture the following actions:
- User registration
- User email change
- User password change
With your feedback we will be able to expand the array of actions with different eCommerce and membership plugins, so start thinking of what automation you would like to see and share them in the comments!
- Promote user to secondary group upon purchasing product
- Promote user to secondary group upon completing course
- Send user a conversation X days before license expires
- Send user an alert when you publish a new post
- Remove user from secondary group when license expires
As you can see, the possibilities of user actions are endless and can vastly make a difference in getting your forum user’s over to your main website.
While user actions are great for capturing actions, it is important that you have the right administration capabilities of your own and that is where we will look next in the Edit User screen in WordPress.
User Management and Sync Controls
Now when you edit any user in WordPress you will see a new XenForo Profile section which gives you an overview of the current user’s XenForo account information, and a few helpful admin actions for yourself.
As fast as a user can connect their account, you can quickly take it away with the disconnect button!
Furthermore, if account info on the XenForo side gets out of date for any reason you can use the “sync user” button to push the account information from WordPress over to XenForo.
It’s important to know if you do not enable the “Sync edit email and password” option from the User Actions panel the email and password will not change in XenForo when you sync a user.
For your convenience, you may also manually connect an existing WordPress user by entering one or more details about an existing XenForo user:
Now, for that one more thing…
Keep Track of All Synced Data with the Connections Panel
Between XFtoWP’s famous Thread comments feature and now user syncing, it is important you are able to somehow keep track of all of the data being passed between your websites.
That’s why there was so much detail put into the new Connected data page which gives you an at a glance overview of which items are connected to what, and quick links to take you where you need to go.
You just have to see it to appreciate the convenience of this panel, and I plan to add more controls here in later versions of XFtoWP.
Other Notable Changes in XFtoWP 1.2
- Access the “Edit strings” and “Connected data” settings pages from the XenForo admin menu
- Fixes a bug where the Thread comments meta box stopped working when moved out of the right hand sidebar in the WordPress Blocks Editor
- A massive rewrite of the XFtoWP Requests API was done for better code organization and far easier access to request methods
Use Syncing Tips
- It is strongly recommended you do not allow user’s to change their email and password in XenForo if you are using XFtoWP’s user syncing. I had a small addon developed called Disable Email and Password Edit which makes this easy to implement to your community.
- There is a setting that will automatically log users in to XenForo from the WordPress login form. Enable in User Actions > Settings and ensure the
auth:login-tokenAPI permission is active across sites.
How to Save WordPress User Data to XenForo
The primary focus of this plugin is to sync information about XenForo users to WordPress, and in the event of any XenForo-first integration being introduced to the market it may be worth syncing data about each connected WordPress user into their XenForo profile now.
This step is totally optional but by setting up a few Custom User Fields in XenForo, you can save and keep current the following info:
- WordPress user ID (
- WordPress user roles (
- Account first sync date (
- Account last sync date (
In the example below I went to XenForo Admin CP > Users > Custom user fields > Add field. Use the list above to populate the Field ID value with the exact key name in parenthesis, and the following recommendations:
- Field type: Single-line text box
- General options: Uncheck all boxes
Known Beta Issues
XFtoWP 1.2 beta is fairly stable, but is still possible to throw error messages, have incomplete or changing functionality, and even some embarrassing typos. Here are the currently known issues:
- Changing user groups may perform inconsistently in some actions
- Some features are still active even when API permissions are not set
- Some error messages are thrown when API permissions are not set
If you find any error messages whether on your test site or in the server logs, please report them here even if they seem to be in line with the above known issues.
If you are unclear about what a feature does or it does not function as you expect, please make a note here and I will advise the next best step.
How to Test a Beta Plugin
It is important you do not use XFtoWP 1.2 beta on a live site, or even a future live site, and keep your testing limited to a throwaway WordPress and XenForo installations.
Follow these steps to setup your test environment:
- Install a fresh copy of WordPress to a main directory*
- Install a fresh copy of XenForo to a sub-directory*
- Create an admin API user from XenForo with all scopes access**
- Create 1-2 test user groups in XenForo
- Create custom user fields (optional)
- Install Disable Edit Email and Password addon (optional)
- Disable registrations from XenForo (optional)
- Allow anybody to register from WordPress admin > Settings
- Install the XFtoWP 1.2 beta plugin to WordPress
- Apply API key and Super User ID to Site Setup settings in XFtoWP
- Add Usergroups info to Site Setup settings in XFtoWP
- Save XFtoWP settings and click “Refresh forum data”
- Enable all User Actions settings and setup a user action for “user registration”
- Create a new user from WordPress admin > Users > Add new
- Edit the user profile in WordPress and ensure the “XenForo profile” section is correctly filled in
- Check to see if user was created in XenForo admin > Users
- Check XenForo profile information to see if email and custom user fields (optional) were correctly filled in
- Login as user on the frontend of XenForo with username/email and same password combination
- Change user password in WordPress, and ensure you are logged out in XenForo
- Make sure you can login again with the same username/email and new password combination
- Delete user from WordPress and ensure it is also deleted from XenForo
- Create new user in WordPress
- Edit the WP user and disconnect the XenForo forum account
- Manually connect the XenForo account back
- Go to WP admin > XenForo > Connected data > Users and ensure the correct account information is listed
- Log out of WP admin and go to
https://domain.com/wp-login.phpto register an account (use a real email address)
- Go to your email to find the password reset email WordPress sends on every frontend registration
- Set your password and login
- Make sure you can also login with the same credentials in XenForo. If the auto login redirect option is set, you should be redirected to XenForo and logged into your new account after logging in from WordPress
- Logout of the WordPress account and go back to
- Reset your password and follow the instructions
- Make sure you can also login to XenForo with your new password
*There are no restrictions to how you install these software, this is just a suggestion use case.
**Initially it is easiest to start testing with the most powerful admin account and narrow your permissions down after you have tested the full scope of XFtoWP user syncing
By completing these steps you will have thoroughly tested the major features of XFtoWP 1.2 beta. If Again, if you find any errors or unexpected behaviors in these steps or any alternative steps you take please report them!
Next Steps For XFtoWP 1.2 Beta
Currently, XFtoWP’s new features only work with the default WordPress user registration system and admin controls.
Any eCommerce and membership plugins you use to register users will have to be evaluated for support into the user syncing, which I have anticipated and will be easy to support many plugins.
Let your voice be heard and tell me about your user registration setup on your WordPress site! From there we can work out the best answer to keeping your users in sync.
Finally, XFtoWP 1.2 beta has been developed to exceed at syncing user’s individually, one at a time.
Before working out any kind of “mass import” solution for existing forum and WordPress sites, I’d like to hear about your own website’s configuration, how many user’s you have, and how you’d ideally like to get existing users into this system.
Naturally, I am using XFtoWP’s Thread comments feature to sync the discussion from the MD Forums to this article, so please keep your replies over there the best you can.
I hope you enjoy XFtoWP 1.2 beta, and with your help we can get to the full stable release quickly!