Disqus is the web’s most popular commenting system trusted by millions of publishers to increase reader engagement, grow audience and traffic, and monetize content. Disqus helps publishers of all sizes engage directly with their audiences to build loyalty, retain readers, and foster thriving communities.
The Disqus for WordPress plugin lets site owners and developers easily add Disqus to their sites, replacing the default WordPress comment system. Disqus installs in minutes and automatically imports your existing comments.
- Simple one-click installation that seamlessly integrates with WordPress without ever needing to edit a single line of code or losing any of your existing comments
- Keep users engaged on your site longer with a commenting experience readers love
- Bring users back to your site with web and email notifications and personalized digests
- Improve SEO ranking with user generated content
- Keep spam out with our best-in-class anti-spam filter powered by Akismet
- Single profile for commenting on over 4 million sites including social login ’support for Facebook, Twitter, and Google accounts
- Trusted by sites like ABC News, Entertainment Weekly, and Rotten Tomatoes
- Syncs comments automatically to WordPress for backup and flexibility if you ever decide to switch to a different platform
- Loads asynchronously with advanced caching so that Disqus doesn’t affect your site’s performance
- Monetization options to grow revenue
- Export comments to WordPress-compatible XML to backup or migrate to another system
- Analytics dashboard for mea’suring overall engagement on your site
- Mobile responsive design
- Realtime comments system with fun discussion interactions: voting, photo and video upload, rich media embed (Youtube, Twitter, Vimeo, and more), spoiler tags, mentions
- Comment text formatting (e.g. bold, link, italics, quote) using HTML tags as well as code syntax highlighting
- Threaded comment display (nested 3 levels) with ability to collapse individual threads
- Sort discussion by oldest, newest, and best comments
- Flexible login options – Social login with Facebook, Twitter, and Google, SSO, and guest commenting ’support
- Instant activity notifications, email notifications, and digests pull readers back in
- User profiles that show you recent comment history and frequented communities
- Recommendations widget that shows where active discussions are happening elsewhere on your site
- Automatic anti-spam filter powered by Akismet
- Automated pre-moderation controls to flag comments based on links, user reputation
- Moderate directly in the discussion, via email, or moderation panel
- Email notifications for newly posted comments, replies
- Moderation Panel that lets you search, filter, sort, and manage your comments
- Self-moderation tools like user blocking, comment flagging
- Go to “Plugins” > “Add Plugin”
- Search for “Disqus Comment System” by Disqus
- Click “Install Now”
- Activate the plugin
- (Automatic: easiest) From the Install page of the Disqus plugin settings, follow the Automatic Installation steps to set up Disqus on your site. During this process, you will need to create a Disqus account and register your site. This also creates the API application required for enabling Comment Syncing.
- (Manual: fastest) Enter your site’s Disqus shortname in Site Configuration. This requires you to have created a Disqus account and registered your site.
NOTE: It is recommended that you backup your database before installing the plugin.
Syncing comments to WordPress
Comment Syncing copies comments made in Disqus to your WordPress installation as backup in case you ever decide to switch back to native WordPress comments. Syncing is not enabled by default. To enable syncing, you’ll need to set it up either by creating an API application (follow instructions here) or via Automatic Installation in the plugin.
For more information, go to https://help.disqus.com/customer/portal/articles/960360
Is Disqus free to use on my site?
Yes! Disqus is free to use. We also provide ’subscription plans for larger, commercial sites that want access to more powerful moderation and audience tools and customization.
How do I customize the look-and-feel of Disqus?
Disqus automatically checks your site’s font and background color and adapts to either a light or dark color scheme, along with a serif or sans-serif font. If these are detected incorrectly, you can override them in your Settings.
Will I lose comments if I deactivate Disqus?
The Disqus for WordPress plugin automatically syncs comments back to WordPress. These comments will remain in WordPress should Disqus be deactivated or removed. You can also export your comments from Disqus at any time.
Can I import my existing WordPress comments into Disqus?
Yes, you can import your existing WordPress comments into Disqus during installation.
How do I set up Single Sign-On (SSO)?
SSO allows users in your database to comment without requiring them to register with Disqus. Access to SSO is currently available as an add-on for users with a Business ’subscription. If you would like to enable this feature, contact our Support team. Also check out our guide for setting up SSO on WordPress.
I’m experiencing an is’sue with my installation of Disqus.
Check out our WordPress Troubleshooting guide with specific solutions for potential problems you might be experiencing.
Contributors & Developers
“Disqus Comment System” is open source software. The following people have contributed to this plugin.Contributors
Interested in development?
- Added improvements to manual comment syncing (thanks Artem Russakovskii)
- Fixed a bug with the embed handling pages with missing container IDs
- Fixed a bug with REST URLs handling emtpy host configurations
- Fixed is’sue with mismatched DISQUSVERSION causing admin is’sues
- Fixed is’sue with comments syncing to one sticky post
- Fixed is’sue with missing admin bundles
- Tested plugin with WordPress 5.6 and updated documentation
- Fixed count.js script being loaded on unnecessary pages
- Fixed comments showing sync date instead of creation date in WordPress admin
- Bumping version for WP 5.1 version bump. (Changes to README versions and main php file’s version)
- Fixed Undefined index bug where HTTP_HOST could not find web server
- Add a manual syncing option that allows retroactive syncing within a selected date range
- Fixed bug where SSO avatar URLs were malformed (Thanks to klaufel)
- Fixed bug preventing sites from importing WordPress comments to Disqus
- Add a prompt to create a secret key if missing. Fixes is’sue preventing some sites from using automatic installation and enabling syncing
- Made it easier to reinstall the same site without having to select a new one
- Bug fix for some browsers from autofilling site configuration forms
- Bug fix for sites whose admin URL was different than their public site URL
- Prevent Disqus from loading on pending and scheduled posts
- Fixed warning that stated “cannot access private method Disqus_Rest_Api::dsq_get_settings_schema()”
- A few small copy changes in plugin’s admin UI
- Disabled browser autocomplete for site configuration form
- Implemented a dsq_can_load filter for custom control of when Disqus loads
- Improved UX on updating the site configuration manually
- Fixed an is’sue causing a site crash with PHP version 5.2
- Added additional information to ’support diagnostics
- Lowered minimum-’supported version of PHP to 5.4
- Fixed a syntax is’sue in PHP version 5.3
- Added a check to deactivate plugin if PHP version is earlier than the minimum-’supported version 5.6.
- Fixed a bug that prevented automatic installation when upgrading from version 2.86 or earlier.
- Plugin has been completely rewritten to ’support modern and secure WordPress features.
- Added new Automatic Installation for installing Disqus on your site. This also creates the API application required for enabling comment syncing.
- Completely redesigned plugin settings page. Disqus replaces the Comments menu link in your WordPress admin and includes shortcut links to popular settings.
- Don’t attempt to use cURL on IIS servers
- Check is dsq_sync_forum is scheduled before scheduling
- Add updates for Travis CI
- Fixes a bug in the upgrade process
- Fixes deprecation warnings on sites running PHP7
- Fixes a bug where the comment count won’t work on some themes
- Fix PHP errors when there are no comments to sync
- Fix for automatic comment syncing
- Make ’sure all markup validates for HTML5
- Move all scripts to separate files instead of rendering them in php
- Fixed exporting bug introduced in 2.78 (Thanks to mkilian)
- Numerous small compatibility and security enhancements
- Reinstate changes removed by 2.78
- Security fixes
- Compatibility for WordPress version 4.0
- Fixes login by email is’sue
- Make ’sure Disqus is enabled after installation
- Additional security fixes
- Security fixes (Thanks to Nik Cubrilovic, Alexander Concha and Marc-Alexandre Montpas)
- Bump tested WordPress version to 3.9.1
- Remove obsolete SSO button uploader
- Fix for ‘Reset’ function not completely working the first time
- Bump ’supported WordPress version to 3.8.
- Properly encode site name for SSO login button.
- Increased timeout for comment exporter to 60 seconds.
- Use https: for admin pages
- Miscellaneous bug fixes and improvements.
- Updated settings UI
- Add filter hook for setting custom Disqus language
- For WP >= 3.5, use new media uploader
- Disable internal WordPress commenting if Disqus is enabled (thanks Artem Russakovskii)
- Cleaned up installation and configuration flow
- Added link to WP backup guide in README
- Fix admin bar comments link
- Added a check to avoid a missing key notice when WP_DEBUG=TRUE (thanks Jason Lengstorf)
- Prevent 404 errors for embed.js from being reported by Google Webmaster Tools (missed in 2.73 README)
- Apply CDATA patch from WordPress 3.4 to dsq_export_wxr_cdata() (thanks Artem
Russakovskii for the patch).
- Added Single Sign-On log-in button and icon to options (only for sites using SSO)
- Output user website if set in SSO payload
- Added plugin activation statuses to debug info
- Bump ’supported WordPress version to 3.4.1
- Fixed is’sue where disqus_dupecheck won’t properly uninstall
- Load second count.js (output-in-footer version) reference via SSL too
- Added screenshots
- Load count.js via SSL when page is accessed via HTTPS
- Fixed styling is’sue with Disqus admin.
- Fixed is’sue where embed wasn’t using SSL if page was loaded via HTTPS
- Fixed is’sue with syncing where to user’s without a display_name would
revert back to Anonymous (really this time).
- Fixed is’sue where Google Webmaster Tools would incorrectly report 404s.
- Fixed is’sue with Disqus admin display is’sues.
- Properly uninstall disqus_dupecheck index when uninstalling plugin.
- Fixed is’sue with syncing where to user’s without a display_name would
revert back to Anonymous.
- Fixed is’sue where IP addresses weren’t being synced properly.
- Allow non-Administr’ators (e.g., editors) to see Disqus Moderate panel
inline (fixes GH-3)
- Bumped version number.
- Removed debugging information from web requests in CLI scripts (thanks
Ryan Dewhurst for the report).
- Reduced sync lock time to 1 hour.
- Fixed an is’sue which was not allowing pending posts (for sync) to clear.
- Fixed an is’sue with CLI scripts when used with certain caching plugins.
- Bumped synchronization timer delays to 5 minutes.
- wp-cli.php now requires php_sapi_name to be set to ‘cli’ for execution.
- Fixed a bug with imported comments not storing the correct relative date.
- Added a lock for dsq_sync_forum, which can be overriden in the command line script
with the –force tag.
- dsq_sync_forum will now handle all pending post metadata updates (formerly a separate
cron task, dsq_sync_post).
- Fixed is’sue with jQuery usage which conflicted with updated jQuery version.
- Corrected a bug that was causing posts to not appear due to invalid references.
- Added an option to disable Disqus without deactivating the plugin.
- Added a second check for comment sync to prevent stampede race conditions in WP cron.
- Added command line script to import comments from DISQUS (scripts/import-comments.php).
- Added command line script to export comments to DISQUS (scripts/export-comments.php).
- The exporter will now only do one post at a time.
- The exporter now only sends required attributes to DISQUS.
- Moved media into its own directory.
- Changed legacy query to use = oper’ator instead of LIKE so it can be indexed.
- Fixed an is’sue which was causing invalid information to be presented in RSS feeds.
- Added ’support for new Single Sign-On (API version 3.0).
- Improved ’support for legacy Single Sign-On.
- Added ’support for get_comments_number in templates.
- Updated URL to forum moderation.
- Fixed an is’sue with fsockopen and GET requests (only affects certain users).
- Fixed is’sue with Disqus-API package not getting updated (only affecting PHP4).
- Syncing comments will now restore missing thread information from old imports.
- Install and uninstall processes have been improved.
- Fixed an is’sue in PHP4 with importing comments.
- Fixed an is’sue that could cause duplicate comments in some places.
- Added an option to remove existing imported comments when importing.
- Added missing file.
- Database usage has been optimized for storing comment meta data.
You can perform this migration automatically by visiting Comments -> Disqus, or if
you have a large database, you may do this by hand:
CREATE INDEX disqus_dupecheck ON
wp_commentmeta (meta_key, meta_value(11));
wp_options (blog_id, option_name, option_value, autoload) VALUES (0, ‘disqus_version’, ‘2.49’, ‘yes’) ON DUPLICATE KEY UPDATE option_value = VALUES(option_value);
- Comment synchronization has been optimized to be a single call per-site.
- disqus.css will now only load when displaying comments
- Fixed a security hole with comment importing.
- Reverted ability to use default template comments design.
- Comments will now store which version they were imported under.
- Added an option to disable server side rendering.
- Better debugging information for export errors.
- Added the ability to manual import Disqus comments into WordPress.
- Added thread_identifier ’support to exports.
- Cleaned up API error messages.
- Fixed a bug which was causing the import process to not grab only the latest set of comments.
- Added an option to disable automated synchronization with Disqus.
- Comments should now store thread information as well as certain other meta data.
- Optimize get_thread polling to only pull comments which aren’t stored properly.
- Comments are now marked as closed while showing the embed (fixes showing default respond form).
- Correct an is’sue that was causing comments.php to throw a syntax error under some configurations.
- Correct a bug with saving disqus_user_api_key (non-critical).
- Added settings to Debug Information.
- Adjusting all includes to use absolute paths.
- Adjusted JSON usage to solve a problem for some clients.
- Correct a bug with double urlencoding titles.
- Comments are now synced with Disqus as a delayed asynchronous cron event.
- Comment count code has been updated to use the new widget. (Comment counts
must be linked to get tracked within “the loop” now).
- API bindings have been migrated to the generic 1.1 Disqus API.
- Pages will now properly update their permalink with Disqus when it changes. This is
done within the sync event above.
- There is now a Debug Information pane under Advanced to assist with ’support requests.
- When Disqus is unreachable it will fallback to the theme’s built-in comment display.
- Legacy mode is no longer available.
- The plugin management interface can now be localized.
- The plugin is now valid HTML5.