У меня работали фрагменты тем так, как хотелось — то есть во всех случаях они учитывали post_excerpt_maxlength. Сначала я реализовал это с помощью плагина (он работал), затем узнал о SiteSetting.always_include_topic_excerpts = true и перешёл на этот вариант. Всё ещё работало.
Около двух дней назад, возможно, после обновления до версии 2.4.0.beta4, фрагменты начали обрезаться до 50 символов. Очень загадочно.
Я пробовал переключать SiteSetting.always_include_topic_excerpts, переустанавливать плагин и менять значение post_excerpt_maxlength, но безрезультатно. Всё ещё обрезается до 50 символов.
Кто-нибудь ещё сталкивался с этим? Не знаю, что ещё можно попробовать.
Ещё один момент: это касается только новых тем. В старых темах с более длинными отрывками они всё ещё сохраняются.
Добавление поста в такую тему не укорачивает отрывок (что неудивительно), но редактирование первого поста действительно приводит к тому, что отрывок снова обрезается до 50 символов.
Так что, хотя я и не проверял (я новичок в Discourse), похоже, что отрывки — это поле базы данных, и обрезка происходит только при обновлении записи.
Этот плагин не обновлялся почти два года, и он был создан до появления настройки always_include_topic_excerpts. Вам не следует его использовать вообще. Я добавил уведомление о устаревании и удалю этот репозиторий примерно через неделю.
Пожалуйста, удалите этот устаревший плагин, включите настройку always_include_topic_excerpts и сообщите, если проблема сохранится.
Кажется, это работает. Меня сбило с толку то, что после включения плагина появились нужные мне отрывки (300 символов), тогда как раньше их не было вовсе. Похоже, что жёстко заданное значение 50 применялось только к вновь созданным темам.
Однако есть нюанс: у существующих тем с отрывками в 50 символов они остались прежними. Похоже, необходимо изменить первое сообщение (OP) этих тем, чтобы увеличить длину их отрывков до значения post_excerpt_maxlength. Есть ли способ автоматизировать это? Спасибо.
Первая задача rake завершилась без ошибок, но не пересоздала краткие выдержки. Тем не менее, сайт работал.
Затем я попробовал с be. Команда завершилась с ошибкой:
rake aborted!
PG::ConnectionBad: FATAL: Peer authentication failed for user "discourse"
… за чем последовала трассировка стека. Теперь страницы тем недоступны. Главная страница доступна, и большая часть админ-панели тоже доступна — хотя графики на главной странице админки не загружаются. Выполнение …
rake posts:rebake
… не исправляет ситуацию. В конце концов я перезагрузил дроплет, но проблема сохраняется. Любая помощь будет оценена.
Удалены плагины сносок и чекбоксов. Не уверен, являются ли они официальными. Пересобрано. Ошибок в консоли при загрузке в небезопасном режиме нет. Сайт работает.
Есть ли смысл тестировать безопасный режим на наличие ошибок в консоли? Если нет, то, похоже, проблема в одном из этих плагинов.