默认的 WordPress 多站点安装不会发生这种情况。所以它可能是由插件或主站点主题中的一些自定义代码引起的。
因为您没有提供有关插件和主题设置的详细信息。我会做的如下:
->在您的测试站点(不是生产站点)中,转到您的网络管理员 -> 插件。一个一个地停用每个网络激活的插件。
假设你有 3 个网络激活插件 A、B、C。我会
- 先停用插件 A,然后检查停用是否能解决问题。
- 如果没有,请再次激活插件 A,但现在停用插件 B。
- 如果仍然没有,请激活插件 B 并停用插件 C。
- 如果没有,请激活插件 C 等。
此类故障排除有助于确定问题的根源。找到后,我建议向插件作者报告以解决此问题。
->如果在网络中一一停用网络激活插件后无法解决问题。现在转到主站点激活插件:sc-group.ab-uk.com/wp-admin/plugins.php
然后逐个停用每个插件,看看停用这些插件中的任何一个是否可以解决问题。 (就像在网络激活插件上所做的一样)。
如果您发现了导致问题的插件,请向插件作者报告以进行修复。
->最后,如果停用插件(网络和主站点)无济于事。将主站点主题切换为默认的 WordPress 主题,例如 27 岁,看看它是否能解决问题。如果它解决了这个问题,这意味着之前激活的主题中有一些自定义代码导致了这个问题。
我将再次在测试站点(而非生产环境)中进行此故障排除。
在 wp-includes/admin-bar.php 中可以找到 WordPress 中显示这些内容的函数。函数名称是 wp_admin_bar_my_sites_menu()
WordPress 通过遍历用户博客然后使用 switch_to_blog() 来做到这一点。并使用 admin_url() 函数获取管理员 URL。我猜一些插件或自定义代码正在覆盖这些 admin_url() 函数的过滤器。如果你愿意,你可以调试它。祝你好运:)