make_site_theme
Creates a site theme.
Description
(false|string) make_site_theme();
}
Returns (false|string)
Usage
if ( !function_exists( 'make_site_theme' ) ) { require_once ABSPATH . '/wp-admin/includes/upgrade.php'; } // NOTICE! Understand what this does before running. $result = make_site_theme();
Defined (1)
The function is defined in the following location(s).
- /wp-admin/includes/upgrade.php
- function make_site_theme() {
- // Name the theme after the blog.
- $theme_name = __get_option('blogname');
- $template = sanitize_title($theme_name);
- $site_dir = WP_CONTENT_DIR . "/themes/$template";
- // If the theme already exists, nothing to do.
- if ( is_dir($site_dir)) {
- return false;
- }
- // We must be able to write to the themes dir.
- if (! is_writable(WP_CONTENT_DIR . "/themes")) {
- return false;
- }
- umask(0);
- if (! mkdir($site_dir, 0777)) {
- return false;
- }
- if (file_exists(ABSPATH . 'wp-layout.css')) {
- if (! make_site_theme_from_oldschool($theme_name, $template)) {
- // TODO: rm -rf the site theme directory.
- return false;
- }
- } else {
- if (! make_site_theme_from_default($theme_name, $template))
- // TODO: rm -rf the site theme directory.
- return false;
- }
- // Make the new site theme active.
- $current_template = __get_option('template');
- if ($current_template == WP_DEFAULT_THEME) {
- update_option('template', $template);
- update_option('stylesheet', $template);
- }
- return $template;
- }