Получение ошибки для отображения значения переключателя на странице «Общие настройки»

Я постоянно получаю ошибки при печати значений переключателя на экране «Общие настройки»:

Недопустимое смещение строки 'service' в F: \ wamp \ www \ plugin-tester \ wp-content \ themes \ двадцатьthнадцать \ functions.php в строке 565

Недопустимое смещение строки 'service' в F: \ wamp \ www \ plugin-tester \ wp-content \ themes \ двадцатьthнадцать \ functions.php в строке 568

Вот код, который я добавил в файл functions.php :

 add_filter('admin_init', 'myservice_register_function'); function myservice_register_function(){ register_setting('general', 'my_service', 'esc_attr'); add_settings_field('my_service', '<label for="service_need">'.__('Do You need My Service' , 'my_service' ).'</label>' , 'service_function', 'general'); } function service_function(){ $options = get_option( 'my_service', ''); // $options = get_settings( 'my_service'); if($options['service'] == 'YES') { //line number 565 echo 'Yes, Service Need'; } if($options['service'] == 'NO') { // line number 568 echo 'No Need Service'; } $html = '<input type="radio" name="my_service[service]" value="YES"/>'; $html .= '<label> NEED </label>'; $html .= '<input type="radio" name="my_service[service]" value="NO"/>'; $html .= '<label > NO NEED </label>'; echo $html; } 

Какая ошибка?

Solutions Collecting From Web of "Получение ошибки для отображения значения переключателя на странице «Общие настройки»"

Помимо проблемы isset , отмеченной Rarst, в функции санитарии есть ошибка. esc_attr похоже, не работает с переключателями, используя esc_sql выполняет задание.
Вы также пропускаете checked состояние для кнопок:

 add_filter( 'admin_init', 'myservice_register_function' ); function myservice_register_function() { register_setting( 'general', 'my_service', 'esc_sql' ); add_settings_field( 'my_service', '<label for="service_need">'.__('Do You need My Service' , 'my_service' ).'</label>' , 'service_function', 'general' ); } function service_function() { $options = get_option( 'my_service', ''); $yes = $no = ''; if( isset( $options['service'] ) ) { if( $options['service'] == 'YES') { echo 'Yes, Service Need<br />'; $yes = ' checked="checked"'; } if( $options['service'] == 'NO') { echo 'No Need Service<br />'; $no = ' checked="checked"'; } } ?> <input type="radio" name="my_service[service]" value="YES"<?php echo $yes; ?> /> <label> NEED </label> <input type="radio" name="my_service[service]" value="NO"<?php echo $no; ?> /> <label> NO NEED </label> <?php }