Какой хук использовать для инициализации перехода settings -> general?

Подскажите пожалуйста какой хук использовать в WP для инициации перехода в setting -> general

Проблема в следущеем Есть скрипт который создает доп поля в настройках WP они создаються с помощью function default_value_for_options( $name ) присваиваю им дефолтные значение все работает до момента сбора данных с этих полей это я делаю в скрипте №2 получаю на выходе пустые значение но если я просто перейду в админке setting -> general все работает поля получают свои значения. Хотелбы сделать так чтобы можно было обойтись без перехода в настройки

Скрипт №1:

    global $wpdb;

    add_action('admin_init', 'add_option_fields_to_general_admin_page');

    function add_option_fields_to_general_admin_page() {
        $options = array(
           'web-hook-sometext' => 'sometext',
           'sometext-source' => 'sometext',
           'sometext-source' => 'sometext',
            'sometext-source' => 'sometext',
            'sometext-source' => 'sometext'
        ); 
        add_settings_section(
           'sometext_setting_section',
           'sometext Source',
           'sometext_setting_section_cb_func',
           'general'
        ); 
        foreach ($options as $ID => $label) {
           register_setting( 'general', $ID); 
           add_settings_field( 
              'sometext' . $ID,
              $label,
              'sometext_setting_cb_func',
              'general',
              'sometext_setting_section',
              array( 
                'label_for' => 'sometext' . $ID, 
                'class' => $ID,
                      'option_name' => $ID
              )
           );
        }
     }
     function sometext_setting_cb_func( $val ) {
        $name = $val['option_name'];
        echo '<input type="text" name="' . $name .'" 
               class="' . $val['class'] .'" 
               value="' . default_value_for_options( $name ) . '" />';
     }
      
     function sometext_setting_section_cb_func($arg) {
     }

     function default_value_for_options( $name ) {
        switch ($name) {
          case $name === "web-hook-sometext" && empty(get_option($name)):
             add_option( $name, "someurl");
             return esc_attr(get_option($name));
             break;
           case $name === "sometext-source" && empty(get_option($name)):
             add_option( $name, "13");
             return esc_attr(get_option($name));
             break;
          case $name === "sometext-source" && empty(get_option($name)):
             add_option( $name, "7");
             return esc_attr(get_option($name));
             break;
          case $name === "sometext-source" && empty(get_option($name)):
             add_option( $name, "15");
             return esc_attr(get_option($name));
             break;
          case $name === "sometext-source" && empty(get_option($name)):
             add_option( $name, "14");
             return esc_attr(get_option($name));
             break;
          default:
             return esc_attr( get_option($name) );
        }
     }
    ?>

Скрипт №2:

    <?php  
    require_once( $_SERVER['DOCUMENT_ROOT'] . '/wp-config.php' ); 
    require_once( $_SERVER['DOCUMENT_ROOT'] . '/wp-includes/wp-db.php' );

    if (!$wpdb) { 
        $wpdb = new wpdb( DB_USER, DB_PASSWORD, DB_NAME, DB_HOST); 
    } else { 
        global $wpdb; 
    }

    $get_source_options_from_db = array(
        'sometext' => $wpdb->get_col("SELECT * FROM `{$table_prefix}options` WHERE `option_name` LIKE 'sometext-source'", 2),
        'sometext' => $wpdb->get_col("SELECT * FROM `{$table_prefix}options` WHERE `option_name` LIKE 'sometext-source'", 2),
        'sometext' => $wpdb->get_col("SELECT * FROM `{$table_prefix}options` WHERE `option_name` LIKE 'sometext-source'", 2),
        'sometext' => $wpdb->get_col("SELECT * FROM `{$table_prefix}options` WHERE `option_name` LIKE 'sometext-source'", 2),
    );

    header('Content-type: application/json');

    echo json_encode($get_source_options_from_db, true);


Ответы (0 шт):