eZDisqus is an integration of Disqus commenting system in eZ Publish.
The goal is to have a tight integration of the Disqus service inside any eZ Publish installation. This extension provides a datatype that can be added to any content class.
Out of the box, eZDisqus comes with:
- Native datatype
- Dashboard widget
- Comment lookup in admin interface for each content object having Disqus datatype
- Exporters to migrate from an existing commenting system (such as eZComments or native eZ Publish comments)
eZ Disqus requires eZ Publish version 4.6 (aka Annapurna, or Community version 2011.6).
PHP 5.3.x is required if you use the export system as it uses namespaces and some advanced features. Otherwise, the requirements are the same as for eZ Publish.
If you don't use the export API, eZDisqus would probably run smoothly on top of eZ Publish 4.1+. However, autoload generator might have unexpected issues (see `Install 5th point`_) since namespace support has been added in Annapurna. You might need to patch the autoload generator if you have issues (see this patch).
First of all, you'll need to setup a new account to the Disqus service.
- Clone the repository in an eZPublish instance extension dir, extension/ezdisqus/
- Activate the extension in eZ Publish
- Regenerate autoloads via php bin/php/ezpgenerateautoloads.php -e -p
- Add the Disqus datatype to the desired content classes
- Configure the extension by making an override of extension/ezdisqus/settings/disqus.ini
- Specify your shortname
- Optionnaly enable the DevelopmentMode which allows you to test comments on an inaccessible website (e.g. local development)
- Please note that at the moment all settings must be shared between admin and front siteaccesses to work properly.
That's it! Your now ready to use Disqus comments!
Disqus allows you to import already existing comments into their service. To make it easy, eZDisqus provides an export system that will generate an XML file in the right format (aka Disqus WXR).
Export script example from eZComments:
<?php use Disqus\Export\Processor as ExportProcessor, Disqus\Export\Exporter\EzComments as EzCommentsExporter, Disqus\Export\Formatter\DisqusWXR as DisqusFormatter; $processor = new ExportProcessor( new EzCommentsExporter(), new DisqusFormatter() ); $processor->export(); echo $processor->render();
Note that above script would need to be run with ezexec.php:
php bin/php/ezexec.php extension/ezdisqus/bin/php/export.php