getPlugins(); $this->parameter->setDefault(array('activated' => NULL)); /** 获取已启用插件 */ $plugins = Typecho_Plugin::export(); $this->activatedPlugins = $plugins['activated']; if (!empty($pluginDirs)) { foreach ($pluginDirs as $key => $pluginDir) { $parts = $this->getPlugin($pluginDir, $key); if (empty($parts)) { continue; } list ($pluginName, $pluginFileName) = $parts; if (file_exists($pluginFileName)) { $info = Typecho_Plugin::parseInfo($pluginFileName); $info['name'] = $pluginName; list ($version, $build) = explode('/', Typecho_Common::VERSION); $info['dependence'] = Typecho_Plugin::checkDependence($build, $info['dependence']); /** 默认即插即用 */ $info['activated'] = true; if ($info['activate'] || $info['deactivate'] || $info['config'] || $info['personalConfig']) { $info['activated'] = isset($this->activatedPlugins[$pluginName]); if (isset($this->activatedPlugins[$pluginName])) { unset($this->activatedPlugins[$pluginName]); } } if ($info['activated'] == $this->parameter->activated) { $this->push($info); } } } } } }