У меня есть этот код:
function my_main_function()
{
add_menu_page('MyNewPlugin', 'MyNewPlugin', 'manage_options', 'my_plugin_options', 'wps_theme_func');
}
add_action('admin_menu', 'my_main_function');function wps_theme_func()
{
echo '
<div class="wrap">
<div id="icon-options-general" class="icon32"><br></div>
<h2>Main Page</h2>
</div>
';
submit_button('Add data', 'secondary');
}
Как я могу открыть новую страницу, используя Добавить данные кнопка?
Страница должна появиться в том же месте, что и Главная страница.
submit_button не имеет возможности перенаправить на другую страницу.
Но вы можете проверить наличие скрытого элемента ввода и выполнить ручное перенаправление в init-action:
function wps_theme_func()
{
echo '
<div class="wrap">
<div id="icon-options-general" class="icon32"><br></div>
<h2>Main Page</h2>
</div>
<input type="hidden" name="wps_theme_do_redirect" value="true">
';
submit_button('Add data', 'secondary');
}
add_action('init', 'wps_theme_init');
function mywps_theme_init() {
if(isset($_POST['wps_theme_do_redirect'] && $_POST['wps_theme_do_redirect'] == 'true') {
wp_redirect('options.php');
exit();
}
}
не забудьте деформировать вывод wp_theme_func () с помощью элемента формы.
edit: конечно, вы можете использовать атрибут формы как перенаправление:
function wps_theme_func()
{
echo '
<div class="wrap">
<div id="icon-options-general" class="icon32"><br></div>
<h2>Main Page</h2>
</div>
<form action="admin.php?page=page-b" method="post">
';
submit_button('Add data', 'secondary');
echo '</form>';
}
Других решений пока нет …