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 Enthusiast, I had that problem with a site a while back and in that case it was a hosting problem with IPv6, which didn't work properly on the server this site was on. I updated...
Error when trying to check for updates
Hi. Welcome to Backdrop. Out of the box, there are two places you can set visibility by user ID and they are related: The layout configure screen under "Visibility conditions" (admin/structure/...
Use visibility User by uid
Start with clean URLs, add Pathauto and Metatag modules, submit your XML sitemap to Google Search Console, and keep your content original and well-structured.
How to Improve SEO Performance in Backdrop CMS