Альтернатива хорошая, но... подключать доп. класс в startup.php - нагружает, тем более когда массивный проект получается и оптимизируется чуть ли не каждый запрос (тут я про кеш подумал и написал ранее).
catalog\controller\module\moj_config.php
вставляем что то типа этого:
<?php
class ControllerModuleMoj_config extends Controller {
private $error = array();
public function index() {
$config_data = array(
'config_page_1',
'config_page_2',
'config_page_3',
'config_page_4',
'config_page_5',
'config_page_6',
'config_page_7',
'config_page_8',
'config_page_9',
'config_page_10',
'config_page_11',
'config_page_12',
'config_page_13',
'config_page_14',
'config_page_15'
);
foreach ($config_data as $conf) {
$this->data[$conf] = $config[$conf];
}
if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/module/moj_config.tpl')) {
$this->template = $this->config->get('config_template') . '/template/module/moj_config.tpl';
} else {
$this->template = 'default/template/module/moj_config.tpl';
}
$this->render();
}
?>
а уже в самом catalog/view/theme/default/template/module/moj_config.tpl
Пишем что то типа этого:
<style type="text/css">
#id-form {display:<?php echo $config_page_5; ?>;}
#id-form_2 {background-color:#<?php echo $config_page_11; ?>; cursor:wait;}
#id-content {height:
<?php if ($theme_config == 1 && $config_page_10 == 1) {?>
450
<?php } elseif ($theme_config == 1 && $config_page_10 == 0) { ?>
330
<?php } elseif ($theme_config == 0 && $config_page_10 == 1) { ?>
370
<?php } else { ?>
250
<?php } ?>px; width:560px;
.class-header {background: #<?php echo $config_page_14; ?>;}
</style>
ну а сами классы - по шаблону стандартно, например <div class="box-heading"> заменить на <div class="class-header">