WordPress как на ладони
wordpress jino

get_comment_ID() WP 1.5

Выводит ID текущего комментария. Используется в цикле комментариев.

Используется в: comment_ID().
Хуки из функции:
Возвращает

Число. ID комментария.

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

get_comment_ID();

Примеры

#1 Выведем ссылку с анкором на комментарий

Текстом которой будет имя комментатора. Код нужно использовать в цикле комментария:

<div id="comment-<?php echo get_comment_ID() ?>">Comment by 
<?php comment_author() ?>: </div>
<div class="comment-text"><?php comment_text() ?></div>

Код get comment ID: wp-includes/comment-template.php VER 4.9.4

<?php
function get_comment_ID() {
	$comment = get_comment();

	/**
	 * Filters the returned comment ID.
	 *
	 * @since 1.5.0
	 * @since 4.1.0 The `$comment_ID` parameter was added.
	 *
	 * @param int        $comment_ID The current comment ID.
	 * @param WP_Comment $comment    The comment object.
	 */
	return apply_filters( 'get_comment_ID', $comment->comment_ID, $comment );
}

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

Из раздела: Циклы комментариев

get_comment_ID 3 коммента
  • Денис cайт: belocer.github.io

    Обшибочка smile
    "Возвращает

    Число. ID комменТАРИя."

    add_action( 'comment_post', 'd_comment_post' );
    
    function d_comment_post() {
    	$id_comment = get_comment_ID();
    	$comment27 = get_comment( $id_comment, ARRAY_A );
    	$name = $comment27['comment_author'];
    	$name = $name . "\r\n" . $comment27['comment_author_email'];
    	$name = $name . "\r\n" . $comment27['comment_author_IP'];
    	$name = $name . "\r\n" . $comment27['comment_content'];
    	$name = $name . "\r\n" . $comment27['comment_date'];
    
    	wp_mail( get_bloginfo( 'admin_email' ), 'Добавлен комментарий',   "\r\n" . $name . "\r\n" . $comment27 . "\r\n" . 'На сайте добавлен новый комментарий'); // кому | тема письма | тело письма
    }

    Подскажите пожалуйста,- как найти $id_comment?
    Или как при таком раскладе, сделать что бы отправлялось одно письмо с последним комментом:

    add_filter( 'get_comment_ID', 'd_comment_post', 100, 2 ); // Работает, но отправляет письма при каждом запросе get_comment_ID
    
    function d_comment_post( $comment_ID, $comment ) {
    	$comment = get_comment( $comment_ID, ARRAY_A );
    	$name = "\r\n" . 'Login Автора комментария : ' .$comment['comment_author'];
    	$name = $name . "\r\n" . 'Почта автора комментария : ' . $comment['comment_author_email'];
    	$name = $name . "\r\n" . 'IP Автора : ' . $comment['comment_author_IP'];
    	$name = $name . "\r\n" . "Комментарий автора : \r\n" . $comment['comment_content'];
    	$name = $name . "\r\n\r\n\r\n" . "Дата и время отправки : " . $comment['comment_date'];
    
    	wp_mail( get_bloginfo( 'admin_email' ), 'Добавлен комментарий',   'На сайте добавлен новый комментарий: ' . "\r\n" . $name . "\r\n" );
    
    	return $comment_ID;
    }
    Ответить3 месяца назад #
    • Денис cайт: belocer.github.io

      Разобрался, всё работает smile

      add_action( 'comment_post', 'd_comment_post', 20, 1 );
      
      function d_comment_post($comment_ID) {
      	header("Content-Type: text/html; charset=UTF-8");
      
      	$comment = get_comment( $comment_ID, ARRAY_A );
      	$name = "\r\n" . 'Login Автора комментария : ' .$comment['comment_author'];
      	$name = $name . "\r\n" . 'Почта автора комментария : ' . $comment['comment_author_email'];
      	$name = $name . "\r\n" . 'IP Автора : ' . $comment['comment_author_IP'];
      	$name = $name . "\r\n" . "Комментарий автора : \r\n" . $comment['comment_content'];
      	$name = $name . "\r\n\r\n\r\n" . "Дата и время отправки : " . $comment['comment_date'];
      
      	wp_mail( get_bloginfo( 'admin_email' ), 'Добавлен комментарий',   'На сайте добавлен новый комментарий: ' . "\r\n" . $name . "\r\n" );
      
      }
      Ответить3 месяца назад #
    • Kama5064

      Опечатку поправил, спасибо! thank_you

      Ответить2 месяца назад #

Здравствуйте, !

Ваш комментарий
Предпросмотр