Server : Apache System : Linux pod-100823:apache2_74:v0.5.7 5.4.0-1138-gcp #147~18.04.1-Ubuntu SMP Mon Oct 7 21:46:26 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.33.7 Disable Function : apache_child_terminate,apache_get_modules,apache_get_version,apache_getenv,apache_note,apache_setenv,disk_free_space,disk_total_space,diskfreespace,dl,exec,fastcgi_finish_request,link,opcache_compile_file,opcache_get_configuration,opcache_invalidate,opcache_is_script_cached,opcache_reset,passthru,pclose,pcntl_exec,popen,posix_getpid,posix_getppid,posix_getpwuid,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_uname,proc_close,proc_get_status,proc_nice,proc_open,proc_terminate,realpath_cache_get,shell_exec,show_source,symlink,system Directory : /nas/content/live/attorneyexperi/wp-content/plugins/ugslot/MWP/WordPress/Provider/ |
<?php /* * This file is part of the ManageWP Worker plugin. * * (c) ManageWP LLC <contact@managewp.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ class MWP_WordPress_Provider_Theme implements MWP_WordPress_Provider_Interface { const STATUS_ACTIVE = 'active'; const STATUS_INACTIVE = 'inactive'; const STATUS_INHERITED = 'inherited'; private $context; public function __construct(MWP_WordPress_Context $context) { $this->context = $context; } public function fetch(array $options = array()) { $rawThemes = $this->context->getThemes(); $currentTheme = $this->context->getCurrentTheme(); $activeThemeSlug = $currentTheme['Stylesheet']; $themes = array(); $themeInfo = array( 'name' => 'Name', // Absolute path to theme directory. 'root' => 'Theme Root', // Absolute URL to theme directory. 'rootUri' => 'Theme Root URI', 'version' => 'Version', 'description' => 'Description', 'author' => 'Author', 'authorUri' => 'Author URI', 'status' => 'Status', 'parent' => 'Parent Theme', ); if (empty($options['fetchDescription'])) { unset($themeInfo['description']); } foreach ($rawThemes as $rawTheme) { $theme = array( // Theme directory, followed by slash and slug, to keep it consistent with plugin info; ie. "twentytwelve/twentytwelve". 'basename' => $rawTheme['Template'].'/'.$rawTheme['Stylesheet'], // A.k.a. "stylesheet", for some reason. This is the theme identifier; ie. "twentytwelve". 'slug' => $rawTheme['Stylesheet'], 'children' => array(), ); foreach ($themeInfo as $property => $info) { if (empty($rawTheme[$info])) { $theme[$property] = null; continue; } $theme[$property] = $this->context->seemsUtf8($rawTheme[$info]) ? $rawTheme[$info] : utf8_encode($rawTheme[$info]); } // Check if this is the active theme $theme['active'] = ($theme['slug'] === $activeThemeSlug); $themes[$theme['name']] = $theme; } foreach ($themes as &$theme) { if (empty($theme['parent']) || empty($themes[$theme['parent']])) { continue; } $themes[$theme['parent']]['children'][] = $theme['slug']; $theme['parent'] = $themes[$theme['parent']]['slug']; } return array_values($themes); } }