是否有办法创建包含管理员仪表板页面上活动信息的每周电子邮件?主要是“社区健康”和“用户指标”下的项目。
您可以使用 Data Explorer 获取数据,并使用 automation 插件将查询结果作为个人消息发送。
2 个赞
是否有办法使用现有的 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,我假设是因为身份验证失败,尽管我确实从 devtools 复制了 cookie。也许我错过了身份验证的某些细微差别。另外,我不知道图表是否会在触发打印之前正确加载。
#!/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" # 从 devtools 复制 cookie 并放在此处
COOKIE_HEADER=$(cat $COOKIES_FILE)
#echo "$COOKIE_HEADER"
# 运行 Chrome 或 Chromium 无头模式打印到 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"