## Добавление метаданных к комментариям с помощью функции ADD_COMMENT_META()
Функция add_comment_meta() позволяет добавлять метаданные (или пользовательские поля) для определённого комментария. Это может быть полезно, например, если вам нужно хранить дополнительную информацию о комментариях.
### Как использовать
Вы также можете использовать функцию update_comment_meta() для добавления метаданных. Эта функция более универсальна, так как обновляет поле, если оно уже существует, или создаёт новое, если его нет.
Однако, add_comment_meta() лучше использовать, когда необходимо добавить несколько метаполей с одинаковыми именами. Для этого у функции есть параметр $unique, который по умолчанию установлен в false. Это значит, что можно создать несколько полей с одним и тем же именем.
### Возвращаемое значение
Функция возвращает:
- **int** — ID метаданных при успехе
- **false** — при ошибке
### Синтаксис функции
```php
add_comment_meta( $comment_id, $meta_key, $meta_value, $unique );
- $comment_id (int, обязательный) — ID комментария, к которому добавляем метаполе.
- $meta_key (string, обязательный) — имя метаполя.
- $meta_value (mixed, обязательный) — значение метаполя.
- $unique (bool, необязательный) — нужно ли, чтобы ключ был уникальным. Если установить в
true, WordPress сначала проверит, существует ли уже поле с таким ключом, и если да, то новое поле не будет добавлено. По умолчанию —false.
Примеры использования
Пример 1: Добавление метаданных к каждому новому комментарию
Когда мы хотим добавить метаполе к комментарию при его публикации, мы можем использовать хук comment_post, который срабатывает, когда комментарий опубликован.
add_action( 'comment_post', 'add_comment_metadata_field' );
function add_comment_metadata_field( $comment_id ) {
add_comment_meta( $comment_id, 'my_metadata_key', $_POST['my_metadata_value'] );
}
В этом примере мы использовали хук comment_post, чтобы добавить метаданные при публикации комментария. Мы получили значение из массива $_POST, которое передаётся с формы.
Пример 2: Другие примеры
Функция add_comment_meta() работает аналогично функции add_post_meta(), но вместо ID поста мы указываем ID комментария. Остальные параметры остаются прежними.
Изменения
Данная функция была введе��а в версии 2.9.0 WordPress.
Код функции
Вот код функции add_comment_meta():
function add_comment_meta( $comment_id, $meta_key, $meta_value, $unique = false ) {
return add_metadata( 'comment', $comment_id, $meta_key, $meta_value, $unique );
}
Связанные функции
Ниже список функций, связанных с комментариями и метаданными:
clean_comment_cache()— очищает кеш комментариев.get_comment_meta()— получает метаданные для комментария.update_comment_meta()— обновляет метаданные комментария.delete_comment_meta()— удаляет метаданные комментария.
Эти функции помогут вам лучше управлять комментариями и их метаданными в WordPress.