我认为您当前问题的答案是“否”。
maybe_convert_table_to_utf8mb4
一旦站点已在不满足本文要求的服务器上升级到WP 4.3以上,就无法在站点上触发。
https://make.wordpress.org/core/2015/04/02/the-utf8mb4-upgrade/
请注意,基于对WP源代码的了解,他们似乎将其从4.2的更新序列移至了4.3(4.2中已不存在,现在完全没有升级),也许是希望吸引更多用户。
因此,这就是您的答案,虽然很糟糕,但是比其他答案更准确__(ツ)_ /
我们目前正在制作一个简单的脚本,该脚本可让您基于操作挂钩触发升级序列的本质。如果我们能够使其稳定并能够正常工作,我们将尝试返回并在此处共享以供他人使用。
我们的基本计划是提取db的实际db部分upgrade_430()
,将其与db更新系统隔离,然后手动触发它。
编辑:下面的解决方案
虽然没有简单的方法来触发脚本,upgrade_430()
但这是一个手工编码的变通办法,基于但设计为嵌入式程序。
https://gist.github.com/carlalexander/4106cfaaf405cec454ba195631bcb6bc
您可以将其放在插件中,也可以将其粘贴到functions.php中。无论哪种方式,它都应该是TEMPORARY。
它设置为在您访问时自动触发 https://yoursite.com/?update-utf8bm4=1
这样可以确保它只运行一次,并且您可以选择时间(对于大型数据库,可能要花一些时间,并且您不想让任何人在帖子发生时对其进行编辑)。
如果您不想使用GET触发器,只需删除add_action
零件和if (!isset($_GET['update-utf8bm4']))
零件即可。
再说一次:删除完成后,您不想留下这样的GET触发器:)
maybe_convert_table_to_utf8mb4
(就像任何WP更新一样)?您没有在回答中提及它;)