comment_form_title()WP 2.7.0

Выводит текст для заголовка формы комментирования, учитывая отвечает ли комментатор на другой комментарий или просто комментирует статью.

Работает, только если JavaScript выключен или скрипт comment-reply.js не используется.

Этот Тег шаблона принято использовать сразу после html тега <div id="respond"> или прямо перед формой комментирования.

Хуков нет.

Возвращает

null.

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

<?php comment_form_title( $noreplytext, $replytext, $linktoparent, $post ); ?>
$noreplytext(строка)
Текст, который будет выводиться, когда комментатор просто комментирует статью.
По умолчанию: "оставить комментарий"
$replytext(строка/массив/число/объект/логический)
Текст, когда комментатор отвечает на другой комментарий.
По умолчанию: "Ответить на комментарий %s"
$linktoparent(логический)
Сделать имя комментатора в параметре $replytext (%s) ссылкой на комментарий (true) или показать как простой текст (false).
По умолчанию: true
$post(int|WP_Post|null)
Пост, для которого отображается форма комментария.
По умолчанию это текущий глобальный пост (global $post).
По умолчанию: null

Примеры

0

#1 Создадим заголовок формы комментирования и "обернем" его в тег H3:

<h3><?php comment_form_title(); ?></h3>
0

#2 Выведем свои тексты, отличные от дефолтных:

<h3><?php comment_form_title( 'Комментировать', 'Ответить комментатору: %s' ); ?></h3>

Заметки

  • Global. WP_Comment. $comment Global comment object.

Список изменений

С версии 2.7.0 Введена.
С версии 6.2.0 Added the $post parameter.

Код comment_form_title() WP 6.5.2

function comment_form_title( $no_reply_text = false, $reply_text = false, $link_to_parent = true, $post = null ) {
	global $comment;

	if ( false === $no_reply_text ) {
		$no_reply_text = __( 'Leave a Reply' );
	}

	if ( false === $reply_text ) {
		/* translators: %s: Author of the comment being replied to. */
		$reply_text = __( 'Leave a Reply to %s' );
	}

	$post = get_post( $post );
	if ( ! $post ) {
		echo $no_reply_text;
		return;
	}

	$reply_to_id = _get_comment_reply_id( $post->ID );

	if ( 0 === $reply_to_id ) {
		echo $no_reply_text;
		return;
	}

	// Sets the global so that template tags can be used in the comment form.
	$comment = get_comment( $reply_to_id );

	if ( $link_to_parent ) {
		$comment_author = sprintf(
			'<a href="#comment-%1$s">%2$s</a>',
			get_comment_ID(),
			get_comment_author( $reply_to_id )
		);
	} else {
		$comment_author = get_comment_author( $reply_to_id );
	}

	printf( $reply_text, $comment_author );
}