冬季 / wn-forum-plugin
Winter CMS 的论坛插件
v2.0.2
2022-08-01 08:49 UTC
Requires
- php: >=7.0
- composer/installers: ~1.0
- winter/wn-user-plugin: ^2.0.0
README
此插件为 Winter CMS 添加了一个简单的可嵌入论坛。
此插件的视频演示在此可见: https://vimeo.com/97088926
配置
该论坛无需立即配置即可运行。但是,以下选项可供选择。
- 论坛类别(频道)可以通过 System > Channels 菜单进行管理。
- 论坛成员可以通过 User 菜单进行管理。
显示频道列表
该插件包含一个名为 forumChannels 的组件,应将其用作论坛的主页。将组件添加到您的页面,并使用组件标签进行渲染
{% component 'forumChannels' %}
您应该向此组件告知其他论坛页面。
- channelPage - 用于查看单个频道主题的页面。
- topicPage - 用于查看讨论主题和帖子的页面。
- memberPage - 用于查看论坛用户的页面。
RSS 源
使用 forumRssFeed
组件显示包含最新博客帖子的 RSS 源。支持以下属性
- channelFilter - 用于过滤主题的频道 slug。如果为空,则显示所有主题。
- topicsPerPage - 每页显示的主题数量。默认值为 20。
- forumPage - 主论坛页面的路径。
- topicPage - 主题详情页面的路径。
该组件可以用于任何页面,它将劫持整个页面周期以以 RSS 格式显示源。以下示例显示了如何使用它
title = "RSS Feed"
url = "/forum/rss.xml"
[forumRssFeed]
forumPage = "forum"
topicPage = "forum/topic"
==
<!-- This markup will never be displayed -->
示例页面结构
forum/home.htm
title = "Forum"
url = "/forum"
layout = "default"
[forumChannels]
memberPage = "forum/member"
channelPage = "forum/channel"
topicPage = "forum/topic"
==
<h1>Forum</h1>
{% component 'forumChannels' %}
forum/channel.htm
title = "Forum"
url = "/forum/channel/:slug"
layout = "default"
[forumChannel]
memberPage = "forum/member"
topicPage = "forum/topic"
==
<h1>{{ channel.title }}</h1>
{% component 'forumChannel' %}
forum/topic.htm
title = "Forum"
url = "/forum/topic/:slug"
layout = "default"
[forumTopic]
memberPage = "forum/member"
channelPage = "forum/channel"
==
<h1>{{ topic.subject }}</h1>
{% component 'forumTopic' %}
forum/member.htm
title = "Forum"
url = "/forum/member/:slug"
layout = "default"
[forumMember]
channelPage = "forum/channel"
topicPage = "forum/topic"
==
<h1>{{ member.username }}</h1>
{% component 'forumMember' %}