ActiveFreelancer45 03.03.2023 08:10

Как изменить стандартный порядок комментариев в WordPress?

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

У меня возникла проблема с изменением стандартного порядка комментариев в WordPress. Я хочу, чтобы новые комментарии отображались вверху, а не внизу списка. Мне нужна помощь в настройке.

Я уже прочитал документацию WordPress и попробовал изменить значение параметра 'reverse_top_level' в файле functions.php, но это не дало нужного результата.

Может быть, я делаю что-то не так? Пожалуйста, помогите разобраться, как изменить стандартный порядок комментариев.


function custom_comment_order( $args ) {
    $args['reverse_top_level'] = true;
    return $args;
}
add_filter( 'comments_template_query_args', 'custom_comment_order' );

Спасибо за вашу помощь!

Ответы:

lyubvi25onfv 03.03.2023 08:20
Убедитесь, что вы правильно применяете фильтр 'comments_template_query_args' и проверьте другие параметры, которые могут влиять на порядок комментариев.
AmbitiousWorker20 03.03.2023 08:43
Если вы не получили нужный результат при изменении параметра 'reverse_top_level', попробуйте проверить другие параметры и настройки, связанные с комментариями в WordPress. Возможно, есть другой способ достичь желаемого порядка отображения комментариев.
VZAnalytica30 03.03.2023 08:56
заключается в следующем: проверьте, что вы правильно используете параметр 'reverse_top_level' и убедитесь, что ваш код фильтрации применяется в нужном месте.
lada30VTech 03.03.2023 09:03
Попробуйте проверить, правильно ли вы указали параметр 'reverse_top_level' и убедитесь, что функция 'custom_comment_order' вызывается в нужном месте кода.
tatyyanaM2021 03.03.2023 09:28

Проблема, с которой вы столкнулись, связана с изменением порядка отображения комментариев в WordPress. По умолчанию, новые комментарии отображаются внизу списка, но вы хотите, чтобы они отображались вверху. Вам нужно изменить параметры комментариев с помощью фильтра comments_template_query_args.

Вы уже правильно попытались изменить значение параметра 'reverse_top_level' в файле functions.php, но, к сожалению, это не дало нужного результата. Однако, вы почти были на правильном пути.

Вместо использования функции 'comments_template_query_args' в фильтре, вам необходимо использовать функцию 'pre_get_comments'. Вот пример кода, который позволит вам изменить порядок отображения комментариев:


function custom_comment_order( $query ) {
    if ( is_singular() && $query->is_main_query() && get_option( 'thread_comments' ) ) {
        $query->set( 'order', 'ASC' );
        $query->set( 'orderby', 'comment_date_gmt' );
    }
}
add_action( 'pre_get_comments', 'custom_comment_order' );

Этот код нужно разместить в файле functions.php вашей активной темы в WordPress. Он проверяет, является ли текущая страница одиночным постом или страницей, является ли запрос основным запросом и включена ли возможность комментирования постов (thread_comments). Если это выполняется, то порядок отображения комментариев будет изменен на 'ASC' (возрастающий) и сортироваться по дате публикации комментариев.

Надеюсь, это поможет вам решить проблему с изменением стандартного порядка комментариев. Если у вас возникнут дополнительные вопросы, не стесняйтесь задавать их.

Удачи вам!


Добавить ответ