I have rewrote the code you given with minor changes. Please try this:
add_action('customize_register', 'add_footer_copyright');
function add_footer_copyright($wp_customize) {
$wp_customize->add_setting( 'footer_copyright', array(
'default' => 'Copyright © 201 - Designed By: Designer Name',
'transport' => 'postMessage',
'capability' => 'edit_theme_options',
) );
$wp_customize->add_control( 'footer_copyright', array(
'label' => 'Footer Copyright',
'section' => 'title_tagline',
'settings' => 'footer_copyright',
'type' => 'text'
) );
}
You will notice that I added transport in add_setting and settings in add_control. Please note that the transport can be either ‘refresh’ (default) or ‘postMessage’. Only set this to ‘postMessage’ if you are writing custom Javascript to control the Theme Customizer’s live preview.
I checked by removing transport since I do not have Javascript to control the Theme Customizer’s live preview. The settings are getting saved in first shot and reflecting when I reload the page.