Hello, I want to save two values from two input fields as an array in one option. So far I’m getting the two inputs to save a value. The problem is, that in input A i write “one” in input B i write “two”. After saving my settings page the value in both inputs is “two”.
I already have several settings in my plugin which are working correctly. I register them like this:
add_settings_field(
'mypluginname_multi_option',
__( 'Test', 'rss-chimp' ),
array( $this, 'mypluginname_multi_option_cb' ),
'mypluginname_section',
'mypluginname_section',
array( 'label_for' => 'mypluginname_multi_option' )
);
register_setting( 'mypluginname_tab_general', 'mypluginname_multi_option' );
Here is my callback which is renderd despite all other settings fields in my options page:
public function mypluginname_multi_option_cb() {
$options = get_option( 'mypluginname_multi_option', [$args] );
$args = isset( $options )
? (array) $options : [];
echo '<input type="text" name="mypluginname_multi_option', $args['value1'] . '" value="' . get_option('mypluginname_multi_option', $args['value1']) .'" />';
echo '<input type="text" name="mypluginname_multi_option', $args['value2'] . '" value="' . get_option('mypluginname_multi_option', $args['value2']) .'" />';
}
What I’m missing?