comment_reply_link() WP 2.7.0

Виводить посилання <a> , яке дозволяє відповідати на коментар. Тег використовується в циклі коментарів для кожного коментаря.

Якщо підключений JavaScript comment-reply.js , цей Тег шаблону буде переміщати форму коментування під коментар на який користувач вирішив відповісти.

Функція призначена для використання усередині циклу коментарів.

Хуків немає.

Повертає

null. Виводить на екран код посилання.

Використання

<?php comment_reply_link( $args, $comment, $post ); ?>
$args
(масив)
Різні параметри, що впливають відображення посилання.


За замовчуванням: попереднє встановлення
$comment
(число)
ID коментаря на який відповідатимемо.


Типово: null
$post
(число)
ID поста для якого відображається посилання.


Типово: null

Аргументи параметра $args

add_below
(рядок)
Назва префіксу для контейнера коментаря. За замовчуванням
comment, означає, що форма пересуватиметься під контейнер з атрибутом
id=”comment-23″ (23 ID коментаря на який відповідаємо).


За замовчуванням: ‘comment’
respond_id
(рядок)
Значення атрибуту id контейнера форми коментування. Тобто. якщо зазначено
respond, то за натисканням посилання блок з
id=”respond” буде пересуватися (це блок форми коментування).


Типово: ‘respond’
reply_text
(рядок)
Текст посилання.


Типово: __(‘Reply’)
login_text
(рядок)
Текст посилання, який показується коли для того, щоб залишити коментар, потрібно зареєструватися.


Типово: __(‘Log in to Reply’)
depth
(число)
Глибина коментарів, для яких посилання буде показано. Для деревоподібних коментарів. Якщо вказати, наприклад, 3, то для коментаря з глибиною вкладеності 4 посилання вже не відображатиметься.


За замовчуванням: 0
before
(рядок)
Текст або HTML, які потрібно додати перед посиланням.
after
(рядок)
Текст або html, які потрібно додати після посилання.


За замовчуванням: array()

Приклади

#1 Посилання для відповіді на коментар

Виведемо посилання для відповіді на коментар максимального рівня вкладеності – 5, та змінимо текст посилання на “відповісти на коментар”:

<?php comment_reply_link( [ 'reply_text' => "відповісти на коментар", 'depth' => 5 ] ); ?>

Виведе подібне посилання:

<a rel="nofollow" class="comment-reply-link" href="#comment-5296" data-commentid="5296" data-postid="1222" data-belowelement="comment-5296" data-respondelement ="respond" aria-label="Коментар до запису цифрового">Відповісти</a>
0

#2 Підключаємо comment-reply.js

За натисканням посилання, яке виводить comment_reply_link() користувача має перекинути до форми відповіді на коментар. Але якщо підключити скрипт comment-reply.js , то при натисканні на це посилання форма відповіді на коментар має сама посунутись під поточний коментар.

Щоб підключити скрипт comment-reply.js , який знаходиться у файлах движка, потрібно додати такий рядок до header.php :

if( is_singular() ) wp_enqueue_script('comment-reply');

Або краще додати в funcions.php такий код:

function enqueue_comment_reply() {
	if( is_singular() )
		wp_enqueue_script('comment-reply');
}
add_action( 'wp_enqueue_scripts', 'enqueue_comment_reply' );
0

#3 Підключаємо comment-reply.js тільки де він потрібний:

Другий приклад трохи спрощений. Цей приклад також включає скрипт, але перш ніж його підключити перевіряє чи дійсно він потрібен. В умови if перевіряється: чи сторінка запису це (is_singular), і чи відкриті коментарі для цієї сторінки (comments_open) і чи включена опція деревоподібних коментарів (get_option). Якщо всі ці умови не дотримуються, то логічно, що цей скрипт не потрібен, тому він не буде підключений:

function enqueue_comment_reply() {
	if( is_singular() && comments_open() && (get_option('thread_comments') == 1) )
		wp_enqueue_script('comment-reply');
}
add_action( 'wp_enqueue_scripts', 'enqueue_comment_reply' );

нотатки

список змін

З версії 2.7.0Введено.

Код comment_reply_link() WP 6.0.2

function comment_reply_link( $args = array(), $comment = null, $post = null ) {
	echo get_comment_reply_link( $args, $comment, $post );
}

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *