Существует ли возможность создавать еженедельное письмо с информацией о деятельности на странице панели администратора? В первую очередь речь идет о разделах «Здоровье сообщества» и «Показатели пользователей».
Вы можете использовать Data Explorer для получения данных и плагин automation для отправки результатов запроса в виде личного сообщения.
Неужели в стандартном Discourse нет способа сделать это? Ведь в нём уже есть визуализации, которые мне нужны для этой информации.
Я добавил этот CSS в свою тему. Это позволит печатать административную панель без боковой панели и других ненужных виджетов. В целом это также делает другие страницы более пригодными для печати. Я просто распечатал свою в PDF и мог бы вручную делать это, скажем, каждое воскресенье, чтобы сохранять снимки статистики моего сайта.
@media print {
#main-outlet-wrapper {
display: block;
}
.sidebar-wrapper, .d-page-header, nav {
display: none;
}
#main-outlet {
width: 100%;
padding: 2em !important;
max-width: unset;
}
}
Что касается автоматизации печати, чтобы её можно было добавить в cron-задание, пока мне это не удалось. Вот моя попытка. Сейчас возвращается ошибка 404; я предполагаю, что это связано с неудачей аутентификации, хотя я и скопировал куки из инструментов разработчика. Возможно, я упускаю какие-то нюансы аутентификации. Также я не знаю, успеют ли графики загрузиться корректно до срабатывания команды печати.
#!/bin/bash
# Определить URL и имя выходного файла
DATE=$(date +"%Y-%m-%d")
OUTPUT="${DATE} Site Report.pdf"
DOMAIN="mysite.org"
COOKIES_DB="$HOME/.config/chromium/Default/Cookies"
COOKIES_FILE="./cookies.txt" # скопируйте куки из инструментов разработчика и поместите сюда
COOKIE_HEADER=$(cat $COOKIES_FILE)
#echo "$COOKIE_HEADER"
# Запустить Chrome или Chromium в headless-режиме для печати в PDF
chromium --headless --disable-gpu --print-to-pdf="$OUTPUT" \
--extra-headers="Cookie: $COOKIE_HEADER" \
--extra-headers="Accept: text/html" \
--extra-headers="Accept-Encoding: gzip" \
--extra-headers="Accept-Language: en-US,en;q=0.9" \
"https://$DOMAIN/admin"
echo "Сохранено в $OUTPUT"