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
If you use CSS Flexbox Layout, you can do with simple styles. In this example, if one or two side columns are excluded from the layout, the central column will occupy all the remaining width:...
How to show main content full-width when sidebar is empty
I found that it had to be specifically <!--> not <!--pagebreak-->
Paging - incorporate with CKeditor?
Yes good point on the allowed tags , however on trying it i hit a couple of issues... If i added the tag <!--pagebreak--> or even <!-- --> it would still remove it when...
Paging - incorporate with CKeditor?