Плагин WP Discourse работает странно

Новые посты создают новые темы в Discourse, но ссылка для начала обсуждения не отображается, и вместо этого я получаю:

Комментарии для этого поста в настоящее время недоступны.

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

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

Я также заметил это в Discourse

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

Вы обновляли wp-discourse в последнее время?

Да, я считаю, что всё обновлено до последней версии…

Также заметил это в сообщении блога

Произошла ошибка при получении списка категорий из Discourse

Я отключил плагин, пересоздал вебхук (он зелёный) и сгенерировал новый API-ключ. Это не помогло.

2.4.0.beta7

(58b5d1434b)

WordPress 5.3

Плагин 1.9.7

Работало ли это до того, как вы вчера обновили WordPress до версии 5.3?

Плагин WP Discourse не должен вызывать это предупреждение. Все API-запросы от плагина используют аутентификацию на основе заголовков. В любом случае, это лишь уведомление об устаревании. Аутентификация API-запросов с использованием параметров URL продолжит работать в ближайшем будущем.

Проверьте, активен ли пользователь, указанный в настройке «Имя пользователя для публикации» плагина, в системе Discourse. Для этого перейдите на страницу администратора этого пользователя и посмотрите строку «Активирован» в разделе «Разрешения». Если в строке «Активирован» установлено значение «Нет», нажмите кнопку «Активировать аккаунт».

Раньше это работало, и это было до обновления, но я не могу сказать, что эти вещи связаны.

Это единственный запрос к API, который у меня есть… но пользователь был деактивирован… и это всё исправило. Большое спасибо — хм, почему это произошло? Огромное спасибо.

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

Это, вероятно, связано с настройкой сайта Discourse «invalidate inactive admin email after days» (срок действия неактивной почты администратора). Недавно были внесены изменения, которые могли повлиять на учетные записи, используемые только для подключения к API. Я полагаю, что эта проблема была исправлена в одном из последних обновлений.

К сведению: этот пользователь снова был деактивирован. Однако я сейчас обновляюсь до последней версии Discourse.

Был деактивирован — снова активирован и обновлён до последней версии Discourse…

Кажется, что повторная деактивация пользователя — это ошибка. Насколько я понимаю, повторная активация пользователя путём нажатия кнопки «Активировать» должна сохранять пользователя активным в течение количества дней, указанного в настройке сайта «invalidate inactive admin email after days». Пожалуйста, проверьте эту настройку, чтобы убедиться, что она установлена на значение по умолчанию — 365 дней. Также сообщите нам, если пользователь снова будет деактивирован.

Я проверил, что настройка равна 365. Я отметил, что аккаунт снова стал неактивным. Активировал и обновил Discourse (снова).

Я изучаю код, который сейчас отключает неактивные учетные записи администраторов. Обратите внимание: вы можете обойти отключение email-адресов неактивных администраторов, установив значение invalidate inactive admin email after days в 0. Однако я не считаю это идеальным решением.

Email-адреса администраторов не должны отключаться, если API-ключ пользователя-администратора использовался в течение периода, заданного настройкой invalidate inactive admin email after days. Возможно ли, что в WordPress вы установили «Имя пользователя для публикации» в учетную запись администратора, которая отключается, но для API-ключа используете «Общий API-ключ для всех пользователей»? Если да, то имеет смысл, что учетная запись администратора продолжает отключаться.

Если у вас нет причин не использовать «Общий API-ключ для всех пользователей» в WordPress, вы можете изменить значения, установленные в настройках подключения WP Discourse, чтобы использовать ваш «Общий API-ключ для всех пользователей» и имя пользователя системного аккаунта. По умолчанию это имя пользователя — ‘system’.