Here’s how to fix Disqus comments not showing correctly. The solution can be found in the Disqus migration tools.
This fix is for when you have Disqus up and running but your comments are not showing correctly.
First you need to understand that Disqus stores your comments and syncs with your WordPress site, so they can become out of sync. There are tools in the Disqus plugin within your WordPress admin for help with syncing with Disqus. However, that may not fix your problem. In many cases you need to use the migration tools.
How to Use the Migration Tools
- Domain Migration Tool
This is for when you change any part of your domain (for example, http to https, domain name, .net to .com). - URL Mapper
This is for when you change any part of your url after the domain. - Redirect Crawler (Advanced)
This is for when you have 301 redirects and Disqus needs to know about them. (I didn’t need to use this one.)
First, log in to your Disqus account and go to Admin then go to Community. The Migration Tools are located on the left side under Tools.
The problem in my particular case had 3 causes:
- I had recently changed from .io to .com
- I had recently changed from http to https
- Comments from my development environment (with .dev) got synced to Disqus
The first thing you should do is use the URL Mapper tool to simply download a csv of all your urls (comments) so you can see what’s going on (the csv file will be emailed to you). Then use the Domain Migration tool and the URL Mapper to correct all your urls. I didn’t need to use the Redirect Crawler as I didn’t have any 301 redirects. Disqus makes this look a bit more complicated than it really is. Just use the csv like a report of all your urls and then use the other tools to search and replace until everything is correct and then all your comments will work great.
Once everything looks good, you should sync the Disqus comments with your WordPress database. Within your WordPress admin, go into Comments and then Disqus. The Disqus plugin defaults to moderation. Click on “Plugin Settings” on the far right. Look for the section “Sync Disqus with WordPress” and check the checkbox for “Remove all Disqus comments before syncing” (This is a very misleading label. This will delete the comments in the WordPress database before synching in the Disqus comments.). WARNING: always backup your database before performing destructive actions on your database.
You can verify your comments are all correct in 2 ways. You can download a new csv file within the URL Mapper or you can go to “Moderate Comments” under “Community.” Be sure you select “All Time” in the filter dropdown. If you have a lot of comments, you’ll probably want to use the csv method instead.