Как инициализировать $ id из другой функции?

Я хотел бы использовать $ id для повторения идентификатора, введенного в другие функции. Вот пример функции с использованием id:

function nl_register_ga_code() { // Validation callback register_setting( 'nl_theme_options', 'nl_theme_options', 'nl_validate_settings' ); // Add setting to section add_settings_section( 'nl_footer_section', 'Footer', 'nl_display_footer_section', 'nl_theme_options.php' ); // Create textarea field $field_args = array( 'type' => 'textarea', 'id' => 'nl_ga_code', 'name' => 'nl_ga_code', 'desc' => 'Paste Google Analytics code.', 'std' => '', 'label_for' => 'nl_ga_code' ); // Label add_settings_field( 'label_ga_code', 'Google Analytics Code', 'nl_display_setting', 'nl_theme_options.php', 'nl_footer_section', $field_args ); } // Registers the setting add_action( 'admin_init', 'nl_register_ga_code' ); 

Функция I будет использовать переменную:

  function nl_display_setting ( $args ) { extract( $args ); $option_name = 'nl_theme_options'; $options = get_option( $option_name ); switch ( $type ) { case 'text': $options[$id] = stripslashes( $options[$id] ); $options[$id] = esc_attr( $options[$id] ); echo "<input class='regular-text$class' type='text' id='$id' name='" . $option_name . "[$id]' value='$options[$id]'>"; echo ( $desc != '' ) ? "<br><span class='description'>$desc</span>" : ""; break; 

Мне нужно инициализировать $ id, но не знаю, как это сделать.

Из этого вопроса и вашего предыдущего вопроса, похоже, вы передаете $field_args из nl_register_ga_code() в nl_display_setting() , как это nl_display_setting($field_args) . (Если нет, тогда вы должны быть – на основе ваших комментариев, вот что вы пытаетесь сделать.)

Итак, в nl_display_setting() не ссылайтесь на $id , $type или $desc ; обратитесь к $args['id'] , $args['type'] и $args['desc'] , соответственно.

Вы не можете ссылаться на ключ массива, как на отдельную переменную. Итак, если у вас есть это:

 $foo = array('bar' => 1234); 

Вы не можете использовать $bar чтобы получить 1234 , но вы можете использовать $foo['bar'] чтобы получить его.