Добавление комментариев в базу данных с помощью wp_insert_comment()

WP_INSERT_COMMENT() │ WP 2.0.0

Функция wp_insert_comment() добавляет новый комментарий в базу данных.

Важная информация

Эта функция требует, чтобы передаваемые данные были "экранированы". Это значит, что если мы передаем пользовательские данные (данные, которые не пришли из формы), их необходимо обработать с помощью функции wp_slash() перед передачей в эту функцию.

Рекомендуется использовать функцию wp_new_comment(), которая автоматически очищает и проверяет данные комментария перед тем, как вставить их в базу данных.

Используется в: wp_new_comment()

Хуки из функции

  • wp_insert_comment

Возвращаемое значение

Возвращает ID нового комментария в случае успешного выполнения или false в случае неудачи.

Использование

Синтаксис

wp_insert_comment( $commentdata );

Параметры

  • $commentdata (массив, обязательный) — массив параметров для добавления нового комментария:

    • comment_agent (строка) — HTTP User Agent автора комментария. По умолчанию: ''

    • comment_approved (целое или строка) — Статус одобрения комментария. По умолчанию: 1

    • comment_author (строка) — Имя автора комментария. По умолчанию: ''

    • comment_author_email (строка) — Email автора комментария. По умолчанию: ''

    • comment_author_IP (строка) — IP адрес автора комментария. По умолчанию: ''

    • comment_author_url (строка) — URL автора комментария. По умолчанию: ''

    • comment_content (строка) — Содержимое комментария. По умолчанию: ''

    • comment_date (строка) — Дата, когда комментарий был оставлен. Если нужно установить дату вручную, также необходимо указать comment_date_gmt. По умолчанию: текущее время

    • comment_date_gmt (строка) — Дата комментария в часовом поясе GMT. По умолчанию: comment_date в GMT.

    • comment_karma (целое) — Карма комментария.

    • comment_parent (целое) — ID родительского комментария, если такой есть.

    • comment_post_ID (целое) — ID сообщения, к которому относится комментарий.

    • comment_type (строка) — Тип комментария. По умолчанию: 'comment'

    • comment_meta (массив) — (необязательный) Массив пар ключ/значение для хранения дополнительной информации о комментарии.

    • user_id (целое) — ID пользователя, оставившего комментарий.

Пример использования

$data = [
    'comment_post_ID'      => 1, // ID поста
    'comment_author'       => 'admin', // Имя автора
    'comment_author_email' => 'example@example.com', // Email автора
    'comment_author_url'   => 'http://example.com', // URL автора
    'comment_content'      => 'здесь будет текст комментария', // Содержимое комментария
    'comment_type'         => '', // Тип комментария
    'comment_parent'       => 0, // ID родительского комментария
    'user_id'              => 1, // ID пользователя
    'comment_author_IP'    => '127.0.0.1', // IP автора
    'comment_agent'        => 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36', // User Agent
    'comment_date'         => null, // текущее время
    'comment_approved'     => 1, // Комментарий одобрен
];

wp_insert_comment( wp_slash($data) );

Важные примечания

  • Глобальная переменная. $wpdb — это объект абстракции базы данных WordPress.

Изменения

  • С версии 2.0.0 — Функция была введена.
  • С версии 4.4.0 — Добавлен параметр $comment_meta.
  • С версии 5.5.0 — Изменено значение по умолчанию для параметра $comment_type на 'comment'.

Связанные функции

  • wp_insert_attachment()
  • wp_insert_category()
  • wp_insert_post()
  • wp_insert_term()
  • wp_insert_user()

Комментарии

  • cancel_comment_reply_link()
  • comment_author_email_link()
  • comment_form()
  • get_comment()
  • wp_new_comment()
  • и многие другие.

Эта статья поможет вам понять, как добавлять комментарии в WordPress с помощью функции wp_insert_comment(). Используйте эту информацию для улучшения взаимодействия с вашим сайтом!

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *