每个请求只加载一次插件。插件加载了以下代码:
// Load active plugins.
foreach ( wp_get_active_and_valid_plugins() as $plugin ) {
wp_register_plugin_realpath( $plugin );
include_once( $plugin );
/**
* Fires once a single activated plugin has loaded.
*
* @since 5.1.0
*
* @param string $plugin Full path to the plugin\'s main file.
*/
do_action( \'plugin_loaded\', $plugin );
}
这在里面
wp-settings.php
, 只加载一次,但还要注意
include_once
使用,这意味着插件无法加载两次,即使该代码出于某种原因运行了两次。
然而,我并不是说每个请求都是如此。这意味着从页面发送的任何AJAX请求都会导致在后台为每个AJAX请求加载插件。这可以解释为什么函数会多次运行