本文整理汇总了PHP中Drupal\Core\Extension\ExtensionDiscovery::setProfileDirectoriesFromSettings方法的典型用法代码示例。如果您正苦于以下问题:PHP ExtensionDiscovery::setProfileDirectoriesFromSettings方法的具体用法?PHP ExtensionDiscovery::setProfileDirectoriesFromSettings怎么用?PHP ExtensionDiscovery::setProfileDirectoriesFromSettings使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Drupal\Core\Extension\ExtensionDiscovery
的用法示例。
在下文中一共展示了ExtensionDiscovery::setProfileDirectoriesFromSettings方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getAllModules
/**
* {@inheritdoc}
*/
public function getAllModules()
{
static $modules;
if (!isset($modules)) {
// ModuleHandler::getModuleDirectories() returns data only for installed
// modules. system_rebuild_module_data() includes only the site's install
// profile directory, while we may need to include a custom profile.
// @see _system_rebuild_module_data().
$listing = new ExtensionDiscovery($this->root);
$profile_directories = $listing->setProfileDirectoriesFromSettings()->getProfileDirectories();
$installed_profile = $this->drupalGetProfile();
if (isset($bundle) && $bundle->isProfile()) {
$profile_directory = 'profiles/' . $bundle->getProfileName();
if ($bundle->getProfileName() != $installed_profile && is_dir($profile_directory)) {
$profile_directories[] = $profile_directory;
}
}
$listing->setProfileDirectories($profile_directories);
// Find modules.
$modules = $listing->scan('module');
// Find installation profiles.
$profiles = $listing->scan('profile');
foreach ($profiles as $key => $profile) {
$modules[$key] = $profile;
}
}
return $modules;
}