Drupal 7 Как программно создать новый комментарий

Вступление

Иногда по ряду причин может возникнуть необходимость программного добаления комментариев на сайт.

Пример кода

Решить подобную задачу для Drupal 7 поможет приведенный ниже сниппет:

<?php
	$c = new stdClass();
	$c->nid = 37; // Идентификатор ноды, куда будет постить.
	$c->cid = 0; // Оставьте "как есть".
	$c->pid = 8; // Идентификатор родительского комментария, т.е кому мы "отвечаем". 0, если не надо.
	$c->uid = 1; // Идентификатор пользователя, который оставил отзыв.
	$c->mail = 'programmer@druweb.ru'; // Почтовый ящик отправителя.
	// Если проверка пользователь авторизован можно опустить это поле, оно будет заполняться автоматически.
	// Если же пользователь является анонимным, и вы хотите как-то его назвать, тогда заполните ник здесь.
	$c->name = 'Евгений'; 
	$c->thread = '01/'; // Если вам нужны древовидные обсуждение, уберите эту строчку.
	$c->hostname = '127.0.0.1'; // По желанию: IP-адрес отправителя.
	$c->created = time(); // По желанию: можете установить время отправки. Полезно для создания комментариев задним числом.
	$c->is_anonymous = 0; // Оставим "как есть", это не аноним.
	$c->homepage = 'http://druweb.ru'; // Ваша домашняя страница.
	$c->status = COMMENT_PUBLISHED; // Пусть сразу же будет опубликованным.
	$c->language = LANGUAGE_NONE; // Язык: тот же, что и у ноды.
	$c->subject = 'Тема сообщения'; 
	$c->comment_body[$c->language][0]['value'] = 'Текст вашего сообщения';
	$c->comment_body[$c->language][0]['format'] = 'filtered_html'; // Используемый формат ввода
	// По желанию. Если есть какие-нибудь доплонительные поля формы, сделайте по данному ниже примеру:
	// $c->field_custom_field_name[LANGUAGE_NONE][0]['value'] = 'Дополнительное поле';
	comment_submit($c); // Подготовка комментария для сохранения.
	comment_save($c); // Сохранение комментария.
?>

Используйте данный сниппет в ваших Drupal модулях. Автоматизируйте рутину.

Результат

Drupal 7 Комментарии добавляются программно



http://sadko-land.ru/ persecuted урфо питомник саженцы плодовых деревьев.

© 2012-2014 Druweb.ru. Вы можете спокойно копировать любые материалы сайта только при наличии обратной ссылки.