这几乎回答了我的问题:
但我想知道这是如何针对插件工作的。
我一直在想,我可以在插件子文件夹下添加我想要的任何文件,例如 /plug-ins/my-plugin/my-file.php,然后向其中添加 PHP 代码,这真的很酷将在每个请求上执行,例如:add_action('init','my_init);
现在我开始怀疑这到底有多“酷”。这是否意味着 WordPress 必须为每个请求做一个目录列表来查找所有文件,然后还要读取所有文件?还是有一些内部优化?与 ASP.NET 之类的大多数项目必须在 web.config 中注册并且除非 web.config 被修改,否则不会重新检查相比,如果不是这样的话,似乎相当慢。
我知道您必须在第一次安装时激活插件,但之后您可以随时添加文件,它们将在下一个请求时“工作”。无法想象它如何避免对每个请求进行目录搜索,除非它使用FindNextChangeNotification之类的东西来通知操作系统的更改(如果所有支持的操作系统 + PHP 版本甚至都有)。