Definition:
function make_site_theme_from_oldschool($theme_name, $template) {}
Parameters
- unknown_type $theme_name
- unknown_type $template
Source code
function make_site_theme_from_oldschool($theme_name, $template) {
$home_path = get_home_path();
$site_dir = WP_CONTENT_DIR . "/themes/$template";
if (! file_exists("$home_path/index.php"))
return false;
// Copy files from the old locations to the site theme.
// TODO: This does not copy arbitarary include dependencies. Only the
// standard WP files are copied.
$files = array('index.php' => 'index.php', 'wp-layout.css' => 'style.css', 'wp-comments.php' => 'comments.php', 'wp-comments-popup.php' => 'comments-popup.php');
foreach ($files as $oldfile => $newfile) {
if ($oldfile == 'index.php')
$oldpath = $home_path;
else
$oldpath = ABSPATH;
if ($oldfile == 'index.php') { // Check to make sure it's not a new index
$index = implode('', file("$oldpath/$oldfile"));
if (strpos($index, 'WP_USE_THEMES') !== false) {
if (! @copy(WP_CONTENT_DIR . '/themes/' . WP_DEFAULT_THEME . '/index.php', "$site_dir/$newfile"))
return false;
continue; // Don't copy anything
}
}
if (! @copy("$oldpath/$oldfile", "$site_dir/$newfile"))
return false;
chmod("$site_dir/$newfile", 0777);
// Update the blog header include in each file.
$lines = explode("\n", implode('', file("$site_dir/$newfile")));
if ($lines) {
$f = fopen("$site_dir/$newfile", 'w');
foreach ($lines as $line) {
if (preg_match('/require.*wp-blog-header/', $line))
$line = '//' . $line;
// Update stylesheet references.
$line = str_replace("<?php echo __get_option('siteurl'); ?>/wp-layout.css", "<?php bloginfo('stylesheet_url'); ?>", $line);
// Update comments template inclusion.
$line = str_replace("<?php include(ABSPATH . 'wp-comments.php'); ?>", "<?php comments_template(); ?>", $line);
fwrite($f, "{$line}\n");
}
fclose($f);
}
}
2317

February 12, 2011 


No comments yet... Be the first to leave a reply!