WP代码和高数据量的优化技巧



寻找有关如何重构短代码的提示,该短代码输出带有元字段值的自定义帖子类型表,该表在页面上达到内存限制,有 250 - 300 个结果。

设置详细信息使用重力表单测验附加组件和WCK自定义字段/帖子类型创建器,我设置了一个培训系统,该系统具有以下自定义帖子类型,适用于不同的数据收集(大写字母)和一般流程。学生被安排在可以有多个课程的班级中,这些课程是测验的集合。每次学生参加测验时,他们都会生成一个结果,该结果具有单独的元数据字段,用于标识课程、班级、测验和学生的 ID。

当前版本使用数据表jQuery将所有结果显示给班主任,并处理分页,搜索,排序,下载到.xls和其他表格功能。但是我遇到了一些内存/性能问题,要循环遍历WP_Query的结果数量超过 250。

分析页面使用简码 - 代码片段粘贴来输出表数据,本质上是:

  • WP_Query循环遍历每个课程,班级和测验自定义帖子类型,将ID/标题存储在自己的数组中,ID作为键。
  • foreach 遍历所有用户并存储为名称、电子邮件的数组
  • WP_Query遍历所有结果,并根据元数据进行匹配,以呈现正确的数据。

寻找有关如何重构此问题的提示,或者最好首先关注哪个,唯一真正的警告是将 GF 测验作为数据入口点。我一直在考虑的一些事情:

  1. 优化WP_Query参数
  2. CPT 和元字段是存储此内容的正确位置吗?
  3. WCK 生成 CPT 的方式是否增加了大量开销?
  4. 使用WP Ajax分页获取结果,并使用单独的构建过程下载.csv。但是,如何在不遇到相同性能问题的情况下构建下载?
  5. WP导入/导出代码是否提供了一些我真正应该查看的示例?
  6. 人们有 1,000 个结果显示到页面/下载的其他示例?
  7. 我怀疑"投入更多硬件"是否可行,因为环境通常对负载非常敏感。但如果是这样,给定场景(多核、处理器速度、内存等)应该关注哪个领域

非常感谢!

如果数据没有不断更新,也许可以尝试静态HTML文件,这里有一个插件给你。 但正如CodeMoose所建议的那样,分页也是你的朋友。

最新更新