Я медленно разбираюсь с настройками API в WordPress и немного борюсь. Я хочу иметь кучу опций, которые пользователь может заполнить, и когда они нажимают сохранить, он редактирует массив опций. Я не могу сохранить опцию в базе данных, и мой код просто идет в options.php, где ошибка говорит об ошибке: страница опций не найдена. Я знаю, что делаю что-то не так, но просто не вижу этого (после двух вечеров).
Мой код до сих пор:
register_setting( 'cjd_options', 'twitter', 'cjd_validate_twitter' );
add_settings_field( 'twitter', 'Twitter URL', 'cjd_twitter_input', 'cjd_social', 'cjd_social_section' );
add_settings_section( 'cjd_social_section', '', 'cjd_admin_options_callback', 'cjd_social' );
function cjd_twitter_input() {
$options = get_option( 'cjd_options' );
echo '<input type="text" class="widefat" id="twitter" name="cjd_options[twitter]" value="'. $options['twitter'] .'" />';
}
function cjd_validate_twitter() {
$twitter = sanitize_text_field( $_POST['twitter'] );
$twitter = trim($twitter);
$twitter = update_option( 'cjd_options', array('twitter' => $twitter) );
return $twitter;
}
Форма выглядит так:
<form method="post" action="options.php">
<?php settings_fields( 'cjd_social_section' ); ?>
<?php do_settings_sections( 'cjd_social' ); ?>
<?php submit_button(); ?>
Любая помощь будет отличной.
Задача ещё не решена.
Других решений пока нет …