【发布时间】:2013-02-23 20:51:20
【问题描述】:
我目前正在尝试了解设置 api,说实话这有点困难。
我遇到的问题是,当我在子页面上提交表单时,它只是转到 options.php 页面?
这是我目前的代码
function setup_theme_admin_menus() {
add_menu_page('Theme settings', 'SMate Options', 'manage_options',
'theme_settings', 'theme_settings_page');
add_submenu_page('theme_settings',
'Front Page Elements', 'Front Page', 'manage_options',
'theme_settings_fp', 'theme_front_page_settings');
add_submenu_page(
'theme_settings',
'Team Option',
'Team Option',
'manage_options',
'theme_team_options',
'theme_team_settings_fn'
);
}
add_action('admin_init', 'initialize_theme_options');
function initialize_theme_options(){
register_setting('team_details', 'team_details' );
add_settings_section(
'member1',
'MEMBER 1',
'theme_settings_fn',
'theme_team_options'
);
add_settings_field(
't1',
'Name',
'text_fn',
'theme_settings_team',
'member1'
);
add_settings_field(
'jt1',
'Job',
'text_fn',
'theme_settings_team',
'member1'
);
add_settings_field(
'lt1',
'Description',
'longtext_fn',
'theme_settings_team',
'member1'
);
}
add_action('admin_init', 'initialize_theme_options');
function theme_team_settings_fn() {
?>
<div class="wrap">
<div id="icon-themes" class="icon32"></div>
<h2>Sandbox Theme Options</h2>
<?php print_r('team_details');
settings_errors(); ?>
<form method="post" action="options.php">
<?php do_settings_sections('theme_team_options'); ?>
<?php submit_button(); ?>
</form>
</div><!-- /.wrap -->
<?php
}
任何帮助将不胜感激,因为我似乎遇到了障碍,所有教程似乎都使用 add_theme_page 完成
【问题讨论】:
-
您缺少一些使子页面正常工作的关键元素,无论是子页面还是主题页面。您在正确的路径上并将表单操作设置为 options.php 因为您想要创建进入 sql db 中的选项表的项目。
-
谢谢,我可以理解我的元素可能没有发布,我只是无法理解当我提交时,它会将我重定向到 /options.php?