DiscPage:一款用于创建静态页面并在文本中插入讨论气泡的插件

:warning: 已弃用

本插件不再维护,且无法与当前版本的 Discourse 配合使用
我们建议从生产站点中移除它,以避免升级问题。
感谢多年来所有使用并为本插件做出贡献的用户。:folded_hands:

通过 DiscPage,您可以将任何主题添加“页面”类别,从而创建静态页面

您还可以插入气球图标,让用户讨论页面的各个小节。

请参阅 旧版演示 新版演示 以及 代码仓库

41 个赞

The discussion topics show up oddly in /latest - perhaps they should go in their own category, “Page Comments” or similar?

The use of structured tags is pretty neat :slight_smile:

5 个赞

Sure, you can use the discpage balloon category setting to set a category for the “balloon” discussions.

6 个赞

Amazing!!! My NGO will definitely have use for it!

6 个赞

Is there a way to show the categories/subcategories on the left?

Is there a way to show the categories/subcategories on the left?

There’s no automatic way to show categories on DiscPage static pages. However, you can add category links manually. You can then style those links to put them in a sidebar on the left (using a theme component).

P.S.: you probably know that, but remember you can access categories from the hamburger menu.

2 个赞

感谢 @syl 提供的出色插件 :slight_smile:

能否请您也解释一下,此插件与以下插件有何不同?

1 个赞

您提到的这个插件看起来很棒。我还没试过,但我想区别在于:

  • 页面创作方式不同:ProCourse 提供了功能丰富的后端,而 DiscPage 仅转换主题(因此您受限于常规的 Markdown 编辑)。
  • ProCourse 不支持在页面内显示讨论气泡。
4 个赞

我今天刚发现这个插件,非常令人印象深刻!非常感谢你的付出,@syl

确认一下,这个功能可以“限制”在某个分类中,不会接管整个论坛,对吗?我们项目中(潜在的)想法是:在一个分类中编写协作指南,同时保留论坛的其他部分(即普通的 Discourse)保持不变。

是的,您说得对。

是的,这听起来像是 DiscPage 可以做的事情。

1 个赞

谢谢 @syl

最后一个问题(暂时): :slight_smile: 插件如何定义权限?谁可以创建/修改/删除这些静态页面?

1 个赞

DiscPage 静态页面本质上只是一个具有特定预设分类的主题。我们称之为“页面”。因此:

  • 任何能在“页面”分类中创建主题的人都可以创建静态页面。您需要根据需求设置“页面”分类的权限。通常的做法是将“创建”权限限制为管理员,如此处所述,这样只有管理员才能创建静态页面。

  • 静态页面可以由主题作者和管理员用户(与正常主题一样)进行修改或删除。

1 个赞

为什么您的插件会修改汉堡菜单图标?它把图标变成了红色,现在我不得不想办法重写 CSS 将其恢复为正常状态。我很喜欢您的插件,但请修复这个问题好吗?

你好 @Erik_Manger,你的问题在 此处 有描述:

我的汉堡菜单变红了,该怎么办?

汉堡菜单
汉堡菜单变红表示 DiscPage 已关闭。这通常发生在以下情况:

  1. 错误阻止了 DiscPage 启动(在这种情况下,请检查调试控制台以查找与 DiscPage 相关的错误),以及
  2. 你手动关闭了 DiscPage(见下文)。

@syl 我在这几步上真的遇到了很大困难。抱歉,我知道这是个超级新手的问题。但是,你能提供一个简单的复制粘贴模板吗?或者一个简短的视频教程?或者如果你能亲自指导我完成这个过程,我会为其他超级新手制作一个 YouTube 视频。

  • 编辑静态页面,请点击页面右上角的“铅笔”按钮(你也可以从汉堡菜单中关闭 DiscPage,然后像往常一样编辑主题)。
  • 设置静态页面的样式,请使用 .dpg-page-content 类。要为单个页面设置样式,请使用 html[data-dpg-page-id] 数据属性。例如,进入 设置 > 自定义 > 浅色主题 > 编辑 CSS/HTML,并在 通用 > CSS 部分输入以下内容:
1 个赞

静态页面可以导入或链接到 JavaScript 文件吗?

1 个赞

静态页面的渲染方式与标准 Discourse 主题相同,因此适用于主题中 JS 脚本的规则。我认为 meta 上有几个相关讨论:这意味着需要创建一个主题组件并进行自定义(此外还有一个 Discourse 设置允许链接外部脚本)。

您可能还想查看 此页面 上的“自定义静态页面”部分,并查看 静态页面中 JS 的示例(顶部的组合框)。

1 个赞

您已经创建了静态页面吗?能看到铅笔按钮吗?

为静态页面设置样式与为标准的 Discourse 主题页面设置样式类似:您需要创建一个主题组件并进行自定义。这里有一个示例 链接。您也可以在 meta 上搜索“主题组件”。.dpg-page-content 类允许创建仅应用于静态页面而非所有主题页面的 CSS 规则。

说到这个,假设我有一个根据用户输入获取图片的 API。在你发送的那个链接中,顶部有一些组合框。如果用户从组合框中选择某项,JavaScript 会根据该用户输入显示相应内容。这在静态页面中可以实现吗?

1 个赞

我认为您的工具 100% 正常运行。问题在于我缺乏如何使用它的知识 :frowning: 我会查看您提供的那个包含 .dpg-page-content 的链接

页面:https://community.tigergraph.com/t/this-is-a-test-page/606

点击“编辑”按钮。插入一段 代码片段。点击“设置”。进入“自定义”。插入 代码片段,您应该能看到一个基本的 HTML 网页出现。这对像我这样的超级新手会有帮助!哈哈!

非常感谢您抽出时间回复我的问题 :slight_smile:

我会随时向您汇报我的进展。希望我也能做出一个像您那样的页面!

1 个赞