主题列表中的 Onebox 主题预览

我正在尝试大致复现 Facebook 处理帖子中超链接的方式。
基本上,他们会显示第一个超链接的 Onebox(或类似)预览, alongside 帖子开头的几段摘录。

我简单尝试了一下 Topic List Previews 插件,但似乎无法实现我想要的效果。

是否有人知道如何实现上述行为?

您是想为话题列表还是话题本身设置样式?

您是否在 TLP 中使用了“瓦片”(Tiles)设置?这将以类似 Facebook 的方式显示缩略图和摘要(如果可用)—— 示例请参考 https://rideabl.es

在 Discourse 中,缩略图以社交媒体风格呈现的唯一层级是话题列表(但这需要插件或自定义代码来实现,例如 TLP、Fakebook 或 Topic List Thumbnails)。

在话题层级,您可能需要保持使用单框布局,尽管对它们进行样式定制也是可能的,只是我从未尝试过这条路径。

谢谢。我还没试过平铺模式——是的,看起来确实有效。显然现在是三列布局,不像 Facebook 那样只有一列,但我猜这应该可以调整吧?(不过我可能先保持原样——这样说不定更好!)

另外,我尝试了“主题列表摘要”功能,但渲染效果有些奇怪。例如,它会显示完整格式的摘要(包括超链接),并且还会随机改变样式(比如字体变大)或在前面添加空格。您知道该如何修复这个问题吗?

最后,rideabl.es 在主题顶部有一个很棒的“外部打开”图标/超链接。这是您的插件提供的功能,还是其他插件的功能?

TLP TC(非插件)完全响应式,如果您通过添加侧边栏来减少可用空间,列数会自动减少(只需缩小浏览器窗口大小即可测试),参见 Pavilion

请查看 Layouts 插件以添加可自定义的侧边栏。了解更多:Pavilion

或者可以尝试 Fakebook TC,它始终为单列布局,并内置了一些侧边栏。

主题列表摘要部分对所有实现都存在一些问题,因为序列化器发送了大量不必要的冗余数据(例如包含 onebox 锚点!)……这可以通过样式在一定程度上进行优化——我在 rideables 上刚刚完成了这项工作。

这是原生功能,已包含在 TLP 的输出中。

那你知道我该如何获取访问权限吗?在我基本原生的 Discourse 安装中,它并没有渲染出来。

最后,你知道为什么即使对于未启用该插件的页面,格式也有些奇怪吗?我注意到,那些未启用 TLP 的列表/分类,在列表视图中,主题标题底部似乎都含有额外的内边距。

当你在标题中放入链接时就会生成它(参见占位符文本)。

如果已安装“插件”,它将覆盖模板。如果格式出现异常,请尝试重新设置样式(但请检查每种样式的影响是否可接受),或许我可以更新插件的 CSS——欢迎提交拉取请求(PR)。您也可以在此处提交错误报告:Pavilion

好的,我已在主题中放置了一个 URL,现在看到了外部链接图标,同时也看到 Discourse 自动从链接资源中复制了标题。

但遗憾的是,这似乎导致 TLP 的 onebox 预览失效了。我哪里做错了?

我正在研究 Fakebook 主题。感谢你的提示!:ok_hand:

不,这并不能阻止它。您需要耐心等待。缩略图(实际上是一组缩略图)的渲染是服务器端处理过程,需要时间,并非即时完成。这一点在所有实现中都是如此。更改前端对此不会有任何影响。:slight_smile: