LaraDuoshuo 基于 Laravel 5 的私有评论系统开源项目

我要开发同款
匿名用户2017年07月05日
70阅读
开发技术PHPHTML/CSS
所属分类在线IT服务网站、建站系统
授权协议MIT

作品详情

LaraDuoshuo

多说已经于2017年6月1号关闭,此为我即兴写的私有评论系统,初步设计用于Hexo,下一步准备支持煎蛋那样的单页面多评论需求。

livedemo

https://autolayout.club

特性

 多说数据导入功能

 新评论邮件通知,被回复邮件通知

 基于简单@的回复功能

 “审核后才显示”开关

 域名白名单

 基于Akismet的反垃圾评论

 管理后台:评论审核、编辑

 页面自注册

 跨域部署,异步加载

 移动兼容

环境要求PHP>5.6.4图片们原理图

截图

如何激活附带的demo后端跑起来

生成.env文件和密钥:

git clone git@github.com:johnlui/LaraDuoshuo.gitcd LaraDuoshuocomposer updatesudo chmod -R 777 storage/ bootstrap/cache/cp .env.example .envphp artisan key:generatecd publicphp -S 0.0.0.0:9000

然后将数据库配置修改为真实值,并将根目录下的LaraDuoshuo.sql导入数据库。

demo跑起来npm install hexo-cli -gcd hexo-demohexo serve如何用于Hexo后端

将代码部署到自己的服务器,指一个域名过去即可。

前端Hexo默认主题

在 themes/landscape/layout/_partial/article.ejs 第36行 </article> 的后面添加如下代码:

<% if (!index) { -%><link rel="stylesheet" href="//fuck.io:9000/css/static.css"><div id="comments"></div><% } -%>

将 themes/landscape/layout/_partial/after-footer.ejs 第17行 <scriptsrc="//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script> 替换为:

<script src="//apps.bdimg.com/libs/jquery/2.1.1/jquery.min.js"></script><script src="//fuck.io:9000/js/static.js"></script><script>LaraDuoshuo.APP_KEY = 'base64:nMYxR20sgL9zbiRrMS8GekiVzPSLBId9QAoTepx+nuk=';LaraDuoshuo.BaseURL = 'https://fuck.io:9000';</script>

请将上面的 LaraDuoshuo.APP_KEY 的值替换为你服务端.env中的APP_KEY的值。

著名的NexT主题

在 themes/next/layout/_layout.swig 中 {%ifpage.comments%} 这一行的下面增加:

<link rel="stylesheet" href="//fuck.io:9000/css/static.css"><div id="comments"></div>

在 <scripttype="text/javascript"src="//cdn.bootcss.com/jquery/2.1.3/jquery.min.js"></script> 这一行的下面增加:

<script src="//fuck.io:9000/js/static.js"></script><script>LaraDuoshuo.APP_KEY = 'base64:nMYxR20sgL9zbiRrMS8GekiVzPSLBId9QAoTepx+nuk=';LaraDuoshuo.BaseURL = 'https://fuck.io:9000';</script>

同样,请将上面的 LaraDuoshuo.APP_KEY 的值替换为你服务端.env中的APP_KEY的值。

替换域名

别忘了将上文中的 fuck.io:9000 替换为你真实的域名端口。

如何用于自己的静态页面

代码如下:

<link rel="stylesheet" href="//fuck.io:9000/css/static.css"> // 默认样式<div id="comments"></div> // 评论 DOM 锚点<script src="//apps.bdimg.com/libs/jquery/2.1.1/jquery.min.js"></script><script src="//fuck.io:9000/js/static.js"></script> // 此 js 必须在 jQuery 之后引入,否则会被覆盖<script> // 注入基础参数LaraDuoshuo.APP_KEY = 'base64:nMYxR20sgL9zbiRrMS8GekiVzPSLBId9QAoTepx+nuk=';LaraDuoshuo.BaseURL = 'https://fuck.io:9000';</script>其他配置域名白名单

修改 config/app.php 内的 domain_white_list 字段,将允许使用本系统的域名加入进去即可。注意那里还有一个开关,默认是不验证的呦。

Akismet反垃圾评论

到 https://akismet.com 注册一个账户,得到一个&ldquo;AKISMETAPIKEY&rdquo;,配置到 config/app.php 内的 AKISMET_API_KEY字段,就OK啦!

管理后台

访问 /register 注册一个账号,成功之后将 config/app.php 内的 register_enable 字段改为 false 关闭注册。

之后就可以使用简洁高效的管理后台啦~

审核通过才显示

此配置位于 config/app.php 内,名为 force_show_after_check,默认为打开状态。

开源协议

本项目遵循MIT协议开源,具体请查看根目录下的LICENSE文件。

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论