pie*_*rsb 2 php mysql wordpress advanced-custom-fields
我正在使用 ACF 在我的页面中设置一系列插槽。因此,管理屏幕包含一系列灵活字段,每个字段都可以是以下之一:
在前端工作得很好。我可以拖放,从数据库中选择帖子/类别/标签等,并且通常玩得很开心。
不幸的是,当尝试向后端页面添加一个新插槽或加载它时,添加新行所花费的时间正在扼杀它。我在那里只有几行,但已经花费了令人无法接受的时间;我相当确定当我添加更多时,我们将开始超时。
我能找到的关于这个问题的唯一信息是 ACF 论坛上的这个支持线程(https://support.advancedcustomfields.com/forums/topic/slow-backend-v-2-5-7/),它基本上说:
是的,如果你有一个大数据库并尝试使用灵活的字段,它会做到这一点。
我也使用 ACF-JSON 没有明显效果。
有没有其他人遇到过这个问题?你做了什么来解决它?还是不得不放弃?
(理想情况下,我的解决方案将保持灵活的字段,因为它们正是客户在这种情况下想要的 - 但如果有另一种解决方案使他们能够在线性时间内编辑后端,我也对此感兴趣。)
这是由于 ACF 加载其转发器字段和灵活字段的方式。灵活字段中的所有布局都加载到 dom 中并隐藏,并且对所有布局应用了大量的 javascript 逻辑。当您单击以添加新的“槽”时,它会运行隐藏布局的副本,并将所有必要的事件处理程序附加到副本。
如果您检查页面 DOMContentLoaded 与加载(最终渲染事件)的时间线,DOMContentLoaded 实际上在大多数情况下都非常快,但是加载(加载 html 之后发生的一切)是大部分时间和内存消耗的内容。
我能做的最好的是为 WYSIWYG 内容字段激活新的“延迟初始化”选项,并为选择、复选框和单选字段禁用“风格化 UI”和“AJAX”选项。
归根结底,最大的问题来自在中继器/弹性域内有深度嵌套的中继器/弹性域。尽可能避免嵌套它们,页面加载时间会显着减少。
| 归档时间: |
|
| 查看次数: |
2048 次 |
| 最近记录: |