Z-Blog Wiki Z-Blog Wiki

Z-Blog官方文库

用户工具

站点工具


appcenter:auditstandard

这是本文档旧的修订版!


Z-Blog应用中心 应用审核规范

注意

  • 该标准为测试版,未正式施行。

制定标准

  • 保证应用的可用性与兼容性;
  • 大部分情况下,保证刚会使用 Z-Blog 的初级用户可方便的使用;
  • 大部分情况下,保证不会网站制作、图片制作的用户可方便的使用。

通常认证标准

  • Microsoft Edge、Firefox40+、Chrome41+、Safari5+浏览器下不错位,可正常使用所有功能;
  • IE11、Firefox 30+、Chrome31+浏览器下不错位,隐藏不可正常使用的功能;
  • 使用UTF-8编码,并确保文件不带bom头部;
  • 没有严重的安全漏洞;
  • 不改动任何的系统文件和语言文件,不对非自己创建的文件进行任何修改;
  • 不存在恶意代码;
  • 非特殊情况不加密,加密必须单独提供未加密的代码;
  • 非特殊需求,不得利用任何方式引用外站任何资源。
  • 在用户未明确知悉的情况下,严禁对其它应用进行任何的干扰或修改,除非该应用自行提供了公共接口。

主题认证标准

  • 指定页面编码为UTF-8(<meta charset>)。
  • 必须引用c_html_js_add。
  • 非特殊要求,勿自带jQuery(系统自带1.8.3)。
  • 带有Z-Blog版权标识。
  • 标题等长度过长不会导致变形。
  • 保证HTML代码可正常被格式化,不出现有标签未闭合的情况
  • 类似网站Logo等每个站点都不同的配置项,务必提供主题插件以便用户进行配置,或是利用系统的侧栏进行管理。
  • 满足对应平台(ASP|PHP)的应用认证标准。

响应式主题

  • 除非主题需要兼容IE6等,否则不要引用为IE6等提供支持的html5.js;
  • 保证Android 4.0和以上版本默认浏览器、iOS 7.0和以上版本Safari、Windows Phone 8.1和以上版本的Internet Explorer 11+不出现兼容性问题,可正常使用全部功能。
  • 保证以下设备对应的分辨率可正常浏览:
    • iPad Air;
    • iPad Mini;
    • iPhone 5;
    • Samsung Galaxy S4;
    • Lumia 1520。

JavaScript

  • 非特殊需求,则需要将JavaScript代码用(function(){})()包裹起来,防止造成污染。此时的命名不设任何限制。
  • 如果必须污染全局window对象,则必须保证变量等命名包括应用ID。
  • jQuery插件不受第二条限制。

PHP应用通常认证标准

  • 移除了所有的UTF-8 BOM头;
  • 文件名大小写正确;
  • 在主流的操作系统(Windows、Ubuntu、CentOS)和服务器软件(IIS、Apache、nginx、Lighttpd、Kangle)下可正常运行。
  • 在PHP 5.2和以上版本可正常运行。

命名标准

  • 在include.php内require或include的任何PHP文件内,所有的全局变量、函数、类等,全部以“插件ID_XXX”或“XXX_插件ID”命名;
  • 如需创建数据表,必须以%pre%plugin_插件ID为开头命名表;
  • 如需使用配置类,配置名必须以插件ID开头。
  • 如需使用Meta存储附加数据,字段名必须以插件ID开头。

权限判断

  • 管理页面等使用$zbp->CheckRights,而不是$zbp->User->Level来判断权限。

数据库

  • 必须使用$zbp->db->xxx执行SQL语句;
  • 涉及到表的时候必须用$table调用;
  • 建表必须在$datainfo和$table内注册;
  • 不使用$zbp->db->sql而自行拼接SQL语句,需同时支持MySQL和SQLite数据库;
  • 不对系统的数据表的结构作任何修改。
  • 不得使用MySQL的ORDER BY rand()

ASP应用通常认证标准

  • 在Windows 2003和以上版本的IIS 6.0和以上版本可正常运行。

ASP主题要求

  • 非特殊情况,必须使用侧栏管理标签(<#template:sidebarX#>)。
  • 统计必须调用AddViewCount和LoadViewCount函数。
  • b_article-single.html 必须包括统计代码(可隐藏)。

命名标准

  • 在include.asp内include的其它文件,所有的全局变量、函数、类等,全部以“插件ID_XXX”或“XXX_插件ID”命名;
  • 如需创建数据表,必须以blog_plugin_插件ID为开头命名表;
  • 如需使用配置类,配置名必须以插件ID开头。
  • 如需使用Meta存储附加数据,字段名必须以插件ID开头。

数据库

  • 对系统数据库操作时,SQL语句必须同时支持Access和SQL Server。
  • 可针对SQL Server开发更多的扩展功能,但是必须保证SQL Server 2000和以上版本可用。

收费应用要求

  • 必须第一时间修正反馈的BUG。

推荐处理的细节问题

  • 强烈推荐制作响应式主题!!!
  • Z-Blog应用中心打包时会自动忽视.git、.svn和.cvs下的文件;
  • 删除thunmbs.db、_notes等文件或文件夹;
  • 检查是否有无用的隐藏文件混入;
  • 最好使用语言标签;
  • HTML语义化;
  • 过W3C验证。

应用上架自检

  • AppChecker是Z-Blog应用中心上架检测工具。开发者在发布应用至Z-Blog应用中心前,应自查所开发的应用是否符合以上规范,并使用AppChecker工具自检无误后再发布。

AppChecker下载

appcenter/auditstandard.1467624356.txt · 最后更改: 2016/07/04 17:25 由 yszm