嗯 我最近在找这个
我发现这个应该是可以实现的
我的论坛实现了 不同的
群租显示不同的内容
所以我在考虑点击喜欢按钮显示东西应该是可以的
但是我对这个这个论坛的插件开发几乎就是 “0”
唉 还真是 书到用时方恨少,事非经过不知难
meta上曾经有人提出一样的需求,但是官方说不想建立一个付费墙,我觉得他们还是太理想化了。
目前我能想象到的解决方案是自己写一个组件,用pluginAPI把付费内容放到回复旁边的按钮里,利用user serializer object里的group of 来实现的只有付费用户才能看见按钮,点开按钮显示一个widget。
可以参考这个Raw Post Button - Theme component - Discourse Meta
把里面的代码换一下,其中addPostMenuButton
return{
async action({ post }) {
// console.log(dex);
modal.show(FullscreenTable, {
model: {
tableHtml: attrs,
},
});
}
,
icon: "file-alt",
className: "raw-post",
title: "qrcode.tip_button",
position: "second-last-hidden",
}
改成
return{
async action({ post }) {
modal.show(FullscreenTable, {
model: {
tableHtml: attrs,
},
});
}
,
icon: "file-alt",
className: "show-download-svip",
title: "显示下载链接",
position: "second-last-hidden",
里面的attrs 换成sitesetting对应的数据,现在site setting支持json schema格式,理论上是可以实现对应的,怎么对应你得想一下
怎么add sitesetting,并且改权限在同一个文件里也有现成的,我记得currentUser这个serializer里面有一个group of 的attribute,可以利用起来。
现阶段discourse的post是用的类似bbcode的修饰来实现隐藏的,所以即使有member only的bbcode,也很容易被直接查看network json payload破解掉,我这个方法不会被轻易破解。
在其他领域有可能可以这么说,感觉在 IT 领域还真不能这么讲。
每年不同的框架到处都是,前几年用 Jquery,现在用 VUE,后端上面也是各种框架。
Java 跑的和 .Net 的又不是一堆东西。
只能说是不太熟悉罢了,等熟悉了就好了。
这个“前几年”有点前啊,得十多年前了吧
而且怎么说呢,框架千奇百怪,不变的是程序设计的思想
只是前端修改的话,只需要检查你有没有赞这个帖子,赞/不赞 的时候对网页add个class就好
后端修改 得去好好学一下ruby和rails
不只了,估计得 20 年了。
那个时候开发一个 Web 项目,所有 JS,图片都要打包在一起。
虽然现在前后端分离了,但整体思路还是没有怎么变。
这个功能不错,有插件吗?