我慢慢地绕着WordPress中的设置api,我稍微挣扎了。我希望有一堆用户可以填充的选项,当他们点击保存时,它会编辑选项数组。我似乎无法在数据库中保存一个选项,我的代码只是转到options.php,其中一个错误显示ERROR:找不到选项页面。我知道我做错了什么但是我不能看到它(两个晚上之后)。
到目前为止我的代码是:
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(); ?>
任何帮助都会很棒。