Add option to change theme file headers

This commit is contained in:
Ben Word
2017-01-15 12:16:50 -07:00
parent b91ab89834
commit c2c43df4b8
3 changed files with 35 additions and 4 deletions

View File

@@ -41,6 +41,9 @@
"test": [
"vendor/bin/phpcs"
],
"post-create-project-cmd": "Roots\\Sage\\PostCreateProject::removeBootstrap"
"post-create-project-cmd": [
"Roots\\Sage\\PostCreateProject::updateHeaders",
"Roots\\Sage\\PostCreateProject::removeBootstrap"
]
}
}

View File

@@ -6,11 +6,39 @@ use Composer\Script\Event;
class PostCreateProject
{
public static function updateHeaders(Event $event)
{
// @codingStandardsIgnoreStart
$io = $event->getIO();
if ($io->isInteractive()) {
$io->write('<info>Define theme headers. Press enter key for default.</info>');
$theme_headers_default = [
'name' => 'Sage Starter Theme',
'uri' => 'https://roots.io/sage/',
'description' => 'Sage is a WordPress starter theme.',
'version' => '9.0.0-beta.2',
'author' => 'Roots',
'author_uri' => 'https://roots.io/'
];
$theme_headers = [
'name' => $io->ask('<info>Theme Name [<comment>'.$theme_headers_default['name'].'</comment>]:</info> ', $theme_headers_default['name']),
'uri' => $io->ask('<info>Theme URI [<comment>'.$theme_headers_default['uri'].'</comment>]:</info> ', $theme_headers_default['uri']),
'description' => $io->ask('<info>Theme Description [<comment>'.$theme_headers_default['description'].'</comment>]:</info> ', $theme_headers_default['description']),
'version' => $io->ask('<info>Theme Version [<comment>'.$theme_headers_default['version'].'</comment>]:</info> ', $theme_headers_default['version']),
'author' => $io->ask('<info>Theme Author [<comment>'.$theme_headers_default['author'].'</comment>]:</info> ', $theme_headers_default['author']),
'author_uri' => $io->ask('<info>Theme Author URI [<comment>'.$theme_headers_default['author_uri'].'</comment>]:</info> ', $theme_headers_default['author_uri'])
];
file_put_contents('style.css', str_replace($theme_headers_default, $theme_headers, file_get_contents('style.css')));
}
}
public static function removeBootstrap(Event $event)
{
$io = $event->getIO();
// @codingStandardsIgnoreStart
if ($io->isInteractive()) {
if ($io->askConfirmation('<info>Remove Bootstrap?</info> [<comment>y,N</comment>]? ', false)) {
file_put_contents('package.json', str_replace(' "bootstrap": "^4.0.0-alpha.6",' . "\n", '', file_get_contents('package.json')));
@@ -23,6 +51,6 @@ class PostCreateProject
file_put_contents('assets/styles/layouts/_header.scss', '');
}
}
// @codingStandardsIgnoreEnd
}
// @codingStandardsIgnoreEnd
}

View File

@@ -1,7 +1,7 @@
/*
Theme Name: Sage Starter Theme
Theme URI: https://roots.io/sage/
Description: Sage is a WordPress starter theme. <a href="https://github.com/roots/sage">Contribute on GitHub</a>
Description: Sage is a WordPress starter theme.
Version: 9.0.0-beta.2
Author: Roots
Author URI: https://roots.io/