elgg官方版是一款基于PHP和MySQL的免费开源社交网络搭建程序,是一款斩获多项荣誉的开源社交网络引擎。elgg配备强大的开发框架,可灵活搭建各类社交场景平台。elgg适用于校园社交、机构内部协作,也可作为企业对接客户的品牌沟通工具。
软件功能
1、Elgg 拥有文档完善的核心 API,上手难度低,方便开发者快速开发新项目。
2、平台采用分层数据模型,搭配统一 API 接口,简化开发者对数据库的操作流程。
3、搭载可扩展视图系统,支持插件优化页面展示层,便于制作复杂的自定义主题。
4、配备灵活的文件存储 API,插件可保存用户生成的文件,无需启动引擎就能分发、传输文件。
5、内置静态资源缓存系统,主题和插件可直接调用图片、样式表、字体、脚本等静态资源。
使用教程
如何构建博客插件
1、创建插件的目录和composer文件输入
本教程以my_blog作为插件名称,在Elgg安装目录的/mod/路径下新建插件根目录/mod/my_blog/,用于存放插件所有文件。同时在根目录中创建composer.json配置文件。
2、创建用于创建新博客文章的表单输入
在/mod/my_blog/views/default/forms/my_blog/路径下新建save.php表单文件,设置标题、正文、标签输入项,无需添加表单标签。表单需调用elgg_view_field()函数统一渲染输入控件;系统所有输入视图可在指定目录查看。为方便插件翻译,建议使用elgg_echo()函数编写展示文本。
3、创建一个用于撰写博客的页面输入
在对应路径下新建add.php文件,用于展示博客编写表单。通过elgg_view_form()函数加载表单,系统会自动补充表单标签与安全令牌,表单提交地址为网站action接口。
4、创建用于保存博客文章的动作文件输入
在指定路径新建save.php动作文件,实现博客文章入库保存。Elgg内置多种字段,博客标题、正文分别存入title和description字段,标签以元数据储存。实体包含用户、群组等子类,需配置子类型,本插件使用my_blog作为子类型。
5、创建 elgg-plugin.php 输入
在插件根目录新建elgg-plugin.php文件,用于配置插件实体、路由、操作等功能。保存动作注册后生成专属访问地址,系统默认仅登录用户可访问,可修改参数设置为管理员专属或公开访问。
6、创建一个页面来查看博客文章输入
新建view.php文件,实现博客文章独立浏览功能。该页面与add.php结构相似,区别在于通过实体获取数据,并调用elgg_view_entity()函数渲染页面,而非加载表单。
7、创建对象视图输入
在指定路径创建my_blog.php对象视图文件,用于渲染单列或列表形式的博客内容。博客实体通过$vars['entity']传入视图,$vars为变量传递数组。代码可自动将标签转为可点击链接,同时自带搜索功能。
更新日志
错误修复
1、输出:优化号码解析逻辑,兼容处理更多短号码格式(b14ed92d0)。
2、缓存:优化并升级 CDN 缓存运行逻辑(e83222a80)。

phpstorm 2019 官方版
Rider 2019 最新版