Форматирование раздела комментариев Discourse в WordPress (тема Divi)

Я интегрировал веб-сайт WordPress с форумом Discourse.
При добавлении раздела комментариев к блогу форматирование этого раздела не реагирует на изменения, внесенные в Divi. В результате некоторые тексты выглядят слишком крупно («Заметные ответы» и «Участники»).
Есть ли способ исправить форматирование?

Привет :slight_smile:

Комментарии в плагине Discourse используют те же элементы, что и стандартные комментарии WordPress, поэтому они будут работать «из коробки» с большинством тем WordPress. Однако конструкторы страниц, такие как Divi, значительно переопределяют структуру элементов и стилей WordPress (гораздо больше, чем стандартная тема), и подобные проблемы могут возникать при любых кастомизациях (как для Discourse, так и для других решений).

Это больше проблема Divi и вашей дочерней темы, чем плагина Discourse для WordPress, но если вы пришлете мне ссылку на ваш сайт, я смогу предложить CSS-код для базового исправления.

Привет, Энгус,

Обычно Divi сохраняет возможность изменения форматирования. Однако в данном случае реагирует на изменение шрифта только часть текста.

Будем очень благодарны за вашу помощь.

Сайт: https://about.openfoodnetwork.ca/tech-enabling-on-line-food-distribution

Привет @newspring, я посмотрел, и у вас есть две проблемы.

Стилизация

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

По сути, это означает, что блоки комментариев Divi работают из коробки только с темой Divi. Если вы используете блок комментариев от Discourse или любой другой блок комментариев, не относящийся к Divi, вам придется стилизовать его самостоятельно. Вы можете увидеть, о чем я говорю, если примените стандартную тему WordPress, например Twenty Nineteen. Комментарии Discourse будут стилизованы CSS-кодом, предоставленным этой темой, и будут выглядеть нормально.

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

CSS
.comment-meta,
.comment-metadata,
.comment-author,
.comment-content,
.comment-author img {
  display: flex;
  align-items: center;
  margin-right: 10px;
  font-size: 1rem !important;
}

.comment::marker {
  content: '';
}

.comment-body {
  margin-bottom: 10px;
}

.et_pb_comments_0 {
  background-color: white; 
}

В результате это будет выглядеть так:

Я думаю, что причина, по которой фразы «Продолжить обсуждение на…» и «Участники» окрашены в синий и желтый цвета, заключается в том, что вы добавили стилизацию непосредственно к ним через Divi. Если вы хотите изменить эти цвета, удалите эту пользовательскую стилизацию в Divi.

Конфликт комментариев Discourse и WordPress

У вас также все еще включены комментарии WordPress, поэтому в нижней части поста отображается еще одна форма для написания комментария. Если вы хотите использовать комментарии Discourse, вам, вероятно, стоит их отключить. Более подробное объяснение этого вопроса можно найти здесь:

Я получил помощь от поддержки Divi по CSS. Теперь все комментарии, оставленные на Discourse, будут отформатированы (цвета использовались для того, чтобы показать, какой CSS-элемент привязан к какому тексту).
Из вашего комментария я понял, что если вы уже отображаете комментарии из Discourse, то комментарии, опубликованные на сайте WordPress, не будут отображаться на Discourse. Так ли это?

Отлично, рад, что вы это решили.

Не совсем уверен, правильно ли я понял вашу мысль, но если вы спрашиваете, можно ли импортировать старые комментарии из WordPress в Discourse, чтобы они отображались как посты на Discourse, то автоматического процесса для этого нет.

Такой импорт должен выполняться вручную кем-то, кто хорошо разбирается в технических деталях. Имейте в виду, что это потребует, например, создания учётных записей для всех комментаторов WordPress на вашем форуме Discourse. Это возможно, но требует индивидуальной настройки.

Я рекомендую сделать следующее:

  1. Оставьте видимыми существующие комментарии WordPress, используя настройку в плагине Discourse: «Показывать существующие комментарии WP» (в разделе «Комментарии»).

  2. Отключите новые комментарии WordPress, следуя инструкциям в посте, на который я ссылался выше.

  3. Включите комментарии через Discourse.

В результате все существующие комментарии WordPress будут отображаться на сайте WordPress, пользователи смогут оставлять новые комментарии на Discourse, и все эти новые комментарии также будут видны на WordPress.