add_comment_meta() WP 2.9.0
Добавляет метаданные (произвольное поле) для указанного комментария.
Для добавления такого поля можно использовать update_comment_meta(). Часто она удобнее и работает универсально, обновляет поле или создает новое, если поля нет.
add_comment_meta() удобнее, когда используются несколько метаполей полей с одинаковыми названиями (ключами). Для этого у функции есть параметр $unique (уникальный), который по умолчанию равен false, т.е. по умолчанию создается не уникальный ключ - это значит, что полей с таким названием может быть несколько.
Хуков нет.
Возвращает
Число/true/false. Мета ID при успехе, false при неудаче.
Использование
add_comment_meta( $comment_id, $meta_key, $meta_value, $unique );
- $comment_id(число) (обязательный)
- ID комментария, к которому добавляется метаполе.
- $meta_key(строка) (обязательный)
- Название метаполя (ключ).
- $meta_value(смешанный) (обязательный)
- Значение метаполя.
- $unique(логический)
- Сделать это поле уникальным или нет? Если поставить 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'] ); }
#2 Еще примеры
Смотрите в описании add_post_meta(). add_comment_meta() работает точно также, только тут нужно указывать ID комментария, а там ID записи. В остальном все абсолютно одинаково...
Список изменений
С версии 2.9.0 | Введена. |
Код add_comment_meta() add comment meta WP 5.6
function add_comment_meta( $comment_id, $meta_key, $meta_value, $unique = false ) {
return add_metadata( 'comment', $comment_id, $meta_key, $meta_value, $unique );
}Cвязанные функции
Из метки: metadata (метаданные)
- add_metadata()
- add_post_meta()
- add_term_meta()
- add_user_meta()
- delete_comment_meta()
- delete_metadata()
- delete_post_meta()
- delete_term_meta()
- delete_user_meta()
- get_comment_meta()
- get_metadata()