In https://api.backdropcms.org/api/backdrop/1/search/system_settings_form it mentions how you can specify a different config file for some of the form elements/values via '#config'. What do you do though if you want to save to the same top-level '#config', but to a different setting?
So say that your form element is $form['my']['cool']['element'] = array( ... ); but you want the setting to be saved as my_cool_element in the .json? ...is a custom submit handler the only option in that case?
So basically, I understand that you can do this:
$primary_config = config('mymodule.settings');
$secondary_config = config('mymodule.moar.settings');
$form = array('#config' => 'mymodule.settings');
$form['first_setting'] = array( ... );
$form['second_setting'] = array(
...
'#config' => 'mymodule.moar.settings',
...
);
...and that this saves first_setting in mymodule.settings.json, while second_setting is saved in mymodule.moar.settings.json.
What I need to do though is something like this:
$config = config('mymodule.settings');
$form = array('#config' => 'mymodule.settings');
$form['first_setting'] = array( ... );
$form['second_setting'] = array(
...
'#config_setting' => 'call_this_something_else',
...
);
...so both settings will be saved in the same mymodule.settings.json file. The first one as "first_setting", while the second one as "call_this_something_else". So instead of this:
{
"_config_name": "mymodule.settings",
"_module": "mymodule",
"first_setting": 123,
"second_setting": "abc",
}
...I would instead want to have this:
{
"_config_name": "mymodule.settings",
"_module": "mymodule",
"first_setting": 123,
"call_this_something_else": "abc",
}
Recent comments
As I work through things I flush the caches after every change I make. As far as I can tell I have the custom module in the correct place (/modules/custom/fix_zero_search) and the file...
custom module not showing up in modules list
If you haven't already, flush all the caches. If it is in the modules folder whether directly or in a custom folder it will show up. If not, something else is wrong with your site; check...
custom module not showing up in modules list
Awful idea! That's not how modules get installed! The number in db indicates the installed state and schema version. You're not supposed to fiddle in the database directly. There's an...
custom module not showing up in modules list