Как изменить стандартный способ отображения вложенных комментариев на WordPress-сайте?
function change_comment_layout($comment, $args, $depth) {
$GLOBALS['comment'] = $comment;
echo '';
comment_text();
echo ' ';
}
Пожалуйста, помогите мне изменить способ отображения вложенных комментариев на моем сайте. Я хотела бы, чтобы каждый вложенный комментарий был помещен внутрь тега Ответы:
Попробуйте использовать функцию WordPress `wp_list_comments()` вместо написания собственной функции для отображения вложенных комментариев.
заключается в том, чтобы вы обратили внимание на функцию wp_list_comments().
Для изменения способа отображения вложенных комментариев на вашем WordPress-сайте, вам нужно внести некоторые изменения в код. Ваш код функции change_comment_layout уже близок к правильному решению, но нам нужно добавить проверку на глубину комментария и использовать рекурсию для отображения всех уровней вложенности.
Вот обновленный код, который позволит вам отобразить вложенные комментарии в виде вложенных списков:
внутри родительского комментария. У вас также есть возможность настроить стиль комментариев и размер аватара с помощью аргументов функции wp_list_comments.
Надеюсь, это поможет вам изменить способ отображения вложенных комментариев на вашем WordPress-сайте. Если у вас возникнут дополнительные вопросы, не стесняйтесь обращаться!
function change_comment_layout($comment, $args, $depth) {
$GLOBALS['comment'] = $comment;
?>
<li id="comment-">
comment_approved == '0' ) : ?>
$depth, 'max_depth' => $args['max_depth'] ) ) ); ?>
<?php
}
Вы можете добавить этот код в файл functions.php своей темы или использовать плагин для добавления этой функции. Затем вам нужно вызвать эту функцию внутри шаблона, где требуется отобразить комментарии:
'ol',
'short_ping' => true,
'avatar_size' => 32,
'callback' => 'change_comment_layout'
) );
?>
Теперь каждый вложенный комментарий будет помещен внутрь тега Чтобы изменить способ отображения вложенных комментариев на вашем сайте и поместить каждый вложенный комментарий внутрь тега `` внутри родительского комментария, вам понадобится использовать фильтр `wp_list_comments_args`.
Вот пример кода, который вы можете использовать:
function change_comment_layout($args) {
$args['style'] = 'ul'; // Устанавливаем стиль вложенных комментариев как список
// Добавляем класс "children" для родительского комментария
$args['callback'] = function($comment, $args, $depth) {
$GLOBALS['comment'] = $comment;
echo ' 1) {
echo 'class="children"';
}
echo '>';
comment_text();
echo ' ';
};
return $args;
}
add_filter('wp_list_comments_args', 'change_comment_layout');
Вы должны поместить этот код в файл `functions.php` вашей темы. После этого ваши вложенные комментарии будут отображаться в виде вложенных списков.
Надеюсь, это поможет вам решить проблему с отображением вложенных комментариев на вашем сайте!
Если у вас есть еще вопросы, не стесняйтесь задавать. Удачи!