Children Mission
为一家培训社区帮助儿童的乌克兰非政府组织打造的WordPress网站:一次性和每月捐款、合作申请,以及团队无需开发人员即可自行编辑的内容。

挑战
一家培训社区帮助儿童的乌克兰非政府组织需要一个网站,既能讲述自己的故事,又能让人们捐款和申请合作,而且团队无需开发人员就能自行编辑。
方案
- 内容: 按客户设计稿用原生Gutenberg区块重建主题;使命、包含五个课程页面和网络研讨会的培训、影响力故事、感言、团队、捐款、联系方式、隐私政策和年度报告等页面;团队、感言和课程作为结构化内容管理;符合无障碍要求的标题和易于区分的“Learn more”链接。
- 捐款: 通过WayForPay进行一次性和每月捐款,签名在服务器端生成,密钥绝不会到达浏览器;回调验证、正确的每月扣款日期、预设金额与校验、仅管理员可见的捐款记录,以及带复制按钮的UAH、EUR和USD银行账户信息。
- 表单与邮件: 通过可重复执行的脚本部署的联系表单、自动回复、通过SMTP服务发送邮件、保存提交记录,以及双层垃圾信息防护。
- SEO与速度: 元标签、Open Graph、组织结构化数据和站点地图;缓存;全站清除混合内容;压缩横幅图片,并把一段故事视频从122 MB重新编码为11.5 MB。
- 安全: Web应用防火墙、双重验证登录、在Cloudflare之后获取访客真实IP、数据库不对外暴露、密钥只保存在服务器上。
- 基础设施: 在Cloudflare之后的独立服务器上运行Docker,自动签发证书,附回滚步骤的部署指南,并在隔离环境中测试了PHP 8.3升级。
- 发现并修复了一个WordPress缺陷: 添加自定义内容类型后,管理员会失去全站权限。
成果
网站已上线,并按月维护:包括更新、经过测试的备份恢复、捐款和表单的端到端检查,以及英语和乌克兰语报告。有一次检查发现联系表单把所有消息都悄悄发进了垃圾邮件,随即得到修复。升级到PHP 8.3后,全部25个页面和16个管理界面都经过检查,没有发现错误。