GithubHelp home page GithubHelp logo

wolaiceshi / ehcms Goto Github PK

View Code? Open in Web Editor NEW

This project forked from felix-zky/ehcms

1.0 2.0 0.0 3.25 MB

积木式快速建站系统

License: Other

ApacheConf 0.02% PHP 72.55% HTML 1.19% CSS 21.15% JavaScript 2.45% PLpgSQL 0.28% Smarty 2.36%

ehcms's Introduction

EHCMS

积木式快速建站系统

项目说明:

  1. 目前代码正在快速迭代过程,由团队本地使用SVN合并汇总,由我每天1-2次提交至github。
  2. 同样因为处于快速迭代期间,代码更新速度比较快,暂时不适合用于正式项目中,您可以关注并下载,但请谨慎用于项目。
  3. 您可以使用Issues对本项目提出改进意见,我们会及时对意见进行处理,但暂时不可以使用Pull requests进行提交(ps:其实可以提交,只是提交了并不会被合并到项目中)。
  4. 详细的项目介绍将陆续进行发布。
  5. 模块流程图、数据字典、使用教程、示例演示以及二次开发手册也将在后期公开发布。

前端

前端扩展(插件以及框架)说明

点击查看此说明

CDN加速

网站常用的js类库均使用CDN地址载入,载入速度更快。
采用CDN加速的另一个好处是缓存加载(秒加载),假如A网站用EHCMS做的。B网站也是用EHCMS做的。用户访问了网站A,将JS载入并缓存在了本地,那么他访问网站B的时候,将无需再远程加载,从本地的缓存库里直接调用,那个速度可想而知。

在预防CDN加载异常的问题上,我们采用的是requirejs的备选(paths)方案。首先加载CDN的远程内容。无法加载的将使用本地(程序代码库)的内容。

辅助类库

ehcms依据网页功能需要开发了一系列辅助类库,为快速构建模板起到了至关重要的作用。
其中包括:数据双向绑定、服务端交互组件(http)、双向通讯API等
更多介绍请点击 eh辅助类库详细介绍

底层架构

前端底层架构采用MVC开发模式,低耦合、高效率协作方式。为后期功能扩展奠定良好的基础。

模型(M)主要与服务端数据交互,如:异步表单数据、异步获取数据、跨域通讯(jsonp)等。
模板(V)主要负责异步数据生成、html元素生成。
控制器(C)由多个模块组成,按需加载,主要负责业务逻辑的处理、与模型和模板之间的沟通 。


服务端

服务端框架选用 thinkphp5.0 版本,模块化开发,安装即用。

多模块 低耦合

项目按功能的不同开发了多个模块,减少模块间的耦合,自由搭配组合,积木式拼接。
模块按需惰性加载,比如我只是一个博客站,那只要一个文章模块就可以了啊。为什么还要一堆其他用不着的东西呢?
模块加载无需操作,会在安装模板的时候自动按当前模板需要的模块进行加载,官方提供的模板均支持该功能,后续会整理模板开发手册,将详细讲解此功能。
强烈建议,当一个网站的类型确定后,不要轻易安装其他类型的模板,我们采用向下兼容的模式来衡量跨类型模板的替换,准确的说,最好的做法是少功能类型向多功能类型转换,反之是不推荐的,这有可能会导致数据的不吻合,还有可能导致数据冗余,(在跨类型安装模板的时候系统会发出提醒的)。最好在建站前考虑好网站的类型、内容以及后期的发展方向,这不仅仅是在功能、模板的选择上有好处,对网站的发展也是有好处的。

  1. 文章模块(包括但不限于发布文章、管理文章,支持markdown解析)
  2. 会员模块(包括但不限于登录、注册、会员信息管理)
  3. 积分模块(各种分值、等级,主要与会员模块配合)
  4. 讨论模块(包括评论、工单)
  5. 资源模块(接收来自各方面上传的图片、音频、视频以及图片压缩、剪切、云存储API等)
  6. 微信模块(微信API以及常用功能,包括但不限于自定义菜单管理、关键词自动回复、微签到、微抽奖、微红包等等)
  7. 支付模块(支付宝、微信)
  8. 商品模块(商品的信息管理以及购物车功能)
  9. 验证模块(短信,邮箱验证、thinkphp数据验证扩展、自带的图片验证、极验验证。如使用的是极验免费版,在接近免费限制的时候将自动切换到自带的图片验证上)
  10. 订单模块(主要是与商城系统配合,但也可以独立工作)
  11. 物流模块(包括但不限于物流公司管理,物流票据打印、物流记录查询等)
  12. 日志模块(包括但不限于运行日志、错误日志、用户操作记录等)
  13. 分类模块(各种分类功能,对已有模块可以做到,载入自动建表的功能)
  14. 统计模块(埋点式精准统计链接、按钮的点击情况,分析网站热度区域)
  15. 广告模块(与模板配合管理广告窗口,更换模块,广告位自动替换,对相同属性的广告位直接覆盖。)
  16. 通讯模块(双向实时通讯,使用websocket,避免轮询、HTTP请求功能(curl))
  17. 店铺模块(可以理解为商品模块的扩展,给商品找一个仓库以及展厅)
  18. 推广模块(包括但不限于,发送短信(目前仅支持阿里大鱼接口)、邮箱(支持国内各种邮箱接口))
  19. 中间件模块(处理一些模块之间的交互、数据传递以及功能并无明确划分的内容)
    未完待续...

模板

官方模板 一键安装


感谢(排名不分先后)

thinkphp:中文WEB应用框架(www.thinkphp.cn)
SUI Mobile : 轻量,小巧且精美的UI库(m.sui.taobao.org)
bootstrap: 简洁、直观、强悍的前端开发框架(www.bootcss.com)
CDN:Bootstrap中文网开源项目免费 CDN 服务(www.bootcdn.cn)
jquery: 优秀的Javascript库(www.jquery.com)
zepto: 优秀的Javascript库(www.zeptojs.com)
lodash: JavaScript工具库(www.lodash.com)
layer: web弹层组件(layer.layui.com)
webUploader: 多功能上传组件(fex.baidu.com/webuploader)
(如有遗漏,请随时联系我们)

同样感谢那些帮助过ehcms,为ehcms项目作出过贡献,以及正在为之奋斗的伙伴们。没有你们的努力,将不可能有这个项目的存在。

ehcms's People

Contributors

felix-zky avatar

Stargazers

aliang avatar

Watchers

James Cloos avatar aliang avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.