Комментарии отображаются только как ссылки, несмотря на настройки их показа

Вот сравнение моих настроек и фронтенда сайта:

Также это не работает через Ajax. Я отключил плагин кэширования, но результата нет.

Тема кастомная, комментарии загружаются с использованием стандартного шаблона комментариев следующим образом:

<?php
comments_template();
?>

Есть ли какие-либо предложения по отладке этой проблемы?

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

Также я вижу связанные комментарии только при ручном добавлении блока «Discourse Comments» в конец записей.

Кроме того, на странице записей в админ-панели я вижу счетчик комментариев рядом с каждой записью. Значит, они точно там есть.

Вот сгенерированный HTML:

<div id="comments" class="comments-area">
	<div class="respond comment-respond">
		<h3 id="reply-title" class="comment-reply-title">
			Присоединяйтесь к обсуждению на 	<a class="wpdc-discourse-topic-link" href="https://slowtwitch.northend.network/t/on-sam-laidlow-s-im-world-championship-validation-debacle/2236073">slowtwitch.northend.network</a>
		</h3>
	</div>
</div>

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

Что вы имеете в виду под этим? Можете ли вы описать, что вы здесь делаете?

Безусловно, вот пост в WordPress: О скандале с подтверждением квалификации Сэма Лейдлоу на чемпионате мира по Ironman – блог Slowtwitch

Вот соответствующий пост в Discourse: О скандале с подтверждением квалификации Сэма Лейдлоу на чемпионате мира по Ironman — Форум триатлона — Slowtwitch (northend.network)

Что касается использования блока комментариев, я зашёл в пост и добавил блок Гутенберга под названием «Discourse Comments», но он просто выводит ту же ссылку, что и вызов comments_template();

Я тоже им не пользуюсь

но очень люблю этот плагин, поэтому слежу за ним :+1:

Это новые комментарии, мои часто требуют времени для распространения

Я подумал, что раз я использую вебхук, всё будет практически мгновенно. Однако самый старый комментарий старше 15 часов.

Спасибо, Росс. Не могли бы вы поделиться meta-файлом из Просмотрщика логов.

Этот файл включен в загрузки журналов

Сервер

WordPress - 6.6.1
PHP - 8.2.9
MySQL - 10.7.8

Активные плагины

Advanced Ads - 1.52.4
Advanced Ads Pro - 2.26.2
Advanced Ads – Tracking - 2.7.1
Advanced Custom Fields PRO - 6.3.4
Duplicator Pro - 4.5.18.1
Font Awesome - 4.5.0
Migrate Guru - 5.65
No Category Base (WPML) - 1.3
Redirection - 5.4.2
SVG Support - 2.5.5
Under Construction - 4.01
W3 Total Cache - 2.7.4
WP-Discourse - 2.5.4
WP Mail SMTP - 4.1.0

Настройки WP Discourse (секретные данные исключены)

connection-logs - 1
display-subcategories - 0
allow-tags - 0
max-tags - 5
publish-as-unlisted - 0
full-post-content - 1
custom-excerpt-length - 55
add-featured-link - 0
auto-publish - 1
force-publish - 0
force-publish-max-age - 0
publish-failure-notice - 0
auto-track - 1
allowed_post_types - post
exclude_tags -
hide-discourse-name-field - 0
discourse-username-editable - 0
direct-db-publication-flags - 0
verbose-publication-logs - 0
enable-discourse-comments - 1
comment-type - display-comments
ajax-load - 0
load-comment-css - 1
discourse-new-tab - 0
hide-wordpress-comments - 1
show-existing-comments - 0
max-comments - 5
min-replies - 1
min-score - 0
min-trust-level - 1
bypass-trust-level-score - 50
only-show-moderator-liked - 0
custom-datetime-format -
cache-html - 0
clear-cached-comment-html - 0
verbose-comment-logs - 1
use-discourse-webhook - 1
webhook-match-old-topics - 0
use-discourse-user-webhook - 0
webhook-match-user-email - 0
verbose-webhook-logs - 0
verbose-sso-logs - 1
enable-sso - 0
auto-create-sso-user - 0
real-name-as-discourse-name - 0
force-avatar-update - 0
redirect-without-login - 0
sso-client-enabled - 1
sso-client-login-form-change - 1
sso-client-sync-by-email - 1
sso-client-disable-create-user - 0
sso-client-sync-logout - 0
logs-enabled - 1

Отлично, я понял, в чём проблема!

Прежде всего, огромное спасибо за вашу помощь. Извините, что заставил вас копаться в этом. Я потратил время на то, чтобы разобраться в Discourse и его функциях, и проблема стала очевидной…

В моих настройках пользователь должен иметь уровень доверия 1 или выше. Сейчас у всех уровень доверия 0. Это форум возрастом 35 лет, который переносится с устаревших технологий, поэтому переносится огромное количество контента, но ничего, что указывало бы на уровень доверия. Я скорректирую эти значения для пользователей.

Так как пользователей более 100 тысяч, есть ли решение для выполнения этого массово?

Рад, что вы решили проблему.

Да, такое решение существует, однако я бы сначала глубоко обдумал это как вопрос управления сообществом, прежде чем приступать к программной реализации. Если вы ещё не изучали уровни доверия в деталях, ознакомьтесь со статьёй:

Затем, если бы это была моя задача, я бы выделил несколько групп пользователей (возможно, в вашем старом решении уже была какая-то группировка пользователей), которым нужно предоставить более высокие уровни доверия, то есть 3 и 4. Это будет в основном ручной процесс. Для более низких уровней, то есть 1 и 2, потребуется массовое обновление. Вы можете сопоставить некоторые метаданные пользователей из вашего старого форума с эвристическими правилами уровней доверия или разработать простые правила. Сам код относительно прост, но я бы не стал просто копировать/вставлять код из темы для 100 тысяч пользователей.

В более широком смысле, вашим лучшим вариантом, вероятно, будет поручить миграцию вашему хостинг-провайдеру Discourse, поскольку они часто сталкиваются с подобными задачами и обладают продвинутыми решениями для их решения.

Спасибо!

Мы являемся как хостинг-провайдером, так и разработчиками. Это наш первый опыт работы с Discourse.