Using $_POST
is too low level. Simply give it the same name as your other options. When you options are displayed they should have the names of the form: my_settings[a_particular_option]
. For instance:
<input name="my_settings[some_input_option]"/>
Then for your hidden input and submit button:
<input type="hiddden" name="my_settings[foo]" value="bar"/>
<input name="my_settings[SubmitButton]" type="submit" class="button-primary" value="<?php _e('Save Changes'); ?>"/>
In your validation array
my_validation($input) {
$foo = $input['foo'];
$submit = $input['SubmitButton'];
}