When trying to set up a settings form for a theme (using HOOK_form_system_theme_settings_alter()
in a theme-settings.php
file), I very often find myself doing something like this:
function MYTHEME_form_system_theme_settings_alter(&$form, &$form_state, $form_id = NULL) {
$my_setting = theme_get_setting('my_setting');
$form['my_setting'] = array(
'#type' => 'checkbox',
'#title' => t('Some setting'),
'#default_value' => isset($my_setting) ? $my_setting : TRUE,
);
}
I would like to be able to do the following instead:
function MYTHEME_form_system_theme_settings_alter(&$form, &$form_state, $form_id = NULL) {
$form['my_setting'] = array(
'#type' => 'checkbox',
'#title' => t('Some setting'),
'#default_value' => theme_get_setting('my_setting', 'MYTHEME', TRUE),
);
}
In other words, change the function to include a 3rd, optional $default
parameter so that it is theme_get_setting($setting_name, $theme = NULL, $default = NULL)
.
Similarly, I would like to be able to do that with config_get()
, so change it to this:
config_get($config_file, $option = NULL, $default = NULL)
.
Recent comments
Hi Steve, you can add a site-wide language switcher for visitors as a block to your layout(s). To do so, go to your layout, click "Add block", e.g. in the Header region, search for "language",...
How to translate my site content
As some folks have mentioned, some work has gone into this. We actually added the ability to have "draft revisions" into core, BUT we never completed the front end user interface for this...
managing draft revisions while still having a version published
Hi danryan, just to be sure, can you check if the tabs aren't hidden in your layout? Go to the page where you miss the tabs. In the Admin bar at top of the page...
View/Edit tabs missing