IntenseDebate в Drupal

Главные вкладки

Аватар пользователя Мак Сим@drupal.org Мак Сим@drupal.org 20 февраля 2009 в 16:06

Те, кто меня читают, уже, конечно, знают про то, что недавно я установил на свой блог популярную систему комментариев IntenseDebate. И подумалось мне тут, что задача установки дебатов на друпал относительно нетривиальна и уж всяко сложнее своих аналогов под остальные CMS (просто для многих есть уже готовые модули). А значит, такой опыт грех в землю зарывать, тем паче, что сам долго искал в сети какие-либо мануалы и ничего вразумительного так и не нашел.

Итак. Установка IntenseDebate состоит из двух частей. Первая это, собственно, размещение блока комментариев под каждой записью. Вторая это размещение на главной ссылок вида Comments(#) опять-таки под каждой записью.

1. Убираем стандартную систему комментариев друпала, вряд ли найдутся желающие совмещать два метода комментирования. Сложностей возникнуть не должно, это осуществляется просто - отключаем одноименный модуль.
2. Создаем новый регион, в котором и будет выводиться наше дерево комментариев. В этом пункте я не буду изобретать велосипед, а просто поделюсь ссылкой на хорошую статью по созданию произвольного региона в друпале. После того, как создали регион, осталось самое простое. Стандартными средствами друпала создаем блок, который и размещаем в свежесозданном регионе. Содержанием блока должен являться код, выданный вам IntenseDebate.
Собственно, с первой частью на этом покончено. Теперь под каждой записью у нас выводится соответствующий блок комментариев с IntenseDebate.

Для того, чтобы на главной странице под каждой записью появились счётчики комментариев, нам необходимо установить модуль Content Templates. Ну, и теперь осталась сущая мелочь. Идём по адресу http://your_site/admin/content/templates/story и прописываем в шаблоне Teaser вторую часть кода, полученную нами при регистрации в дебатах.
И всё бы хорошо, но в таком виде работать она не будет. Необходимо передавать скрипту корректные параметры idcomments_post_id и idcomments_post_url. Что, к счастью, не сложно. После редактирования блок должен выглядеть следующим образом:

<?php print $teaser ?>

var idcomments_acct = 'индивидуальный код';
var idcomments_post_id = '<?php print $node->nid ?>';
var idcomments_post_url = 'http://your_site/<?php print $node->path ?>';

А вот на этом наверное и всё.
За помощь в настройке всего этого дела огромное спасибо SolarWind.

Комментарии

Аватар пользователя neochief neochief 20 февраля 2009 в 19:04

Довольно невежественная строка:

var idcomments_post_url = 'http://your_site/<?php print $node->path ?>';

Ибо а) не у всех сайты лежат а корне б) не увсех включены чистые ссылки в) у многих включен пасавто, который через раз заполняет ->path для анонимв. Вот-с:

var idcomments_post_url = <?php print url('node/'. $node->nid, array('absolute' => TRUE)) ?>;