为什么我的设置表单重定向到主页?

时间:2018-05-28 作者:user3574603

我很难弄明白为什么插件的设置表单会重定向到主页。我所期望的是,提交表单后,设置页面应该重新加载。

表单是否应重定向到主页?为什么此表单指向主页?我做错了什么?(我想我错过了一些明显的东西。)

class BlogPlugin {
    public static function run() {
        add_action( \'admin_menu\', array( __CLASS__, \'add_menu\' ) );
        add_action( \'admin_init\', array( __CLASS__, \'register_settings\' ) );
    }

    public static function add_menu() {
        add_options_page( \'Blog Plugin Settings\', \'Blog Plugin\', \'edit_pages\', \'blog_plugin_settings\', array( __CLASS__, \'render_settings_page\' ), false, 62 );
    }

    public static function register_settings() {
        register_setting( \'bp_blog_plugin\', \'bp_input\' );
    }

    public static function render_settings_page() {

        add_settings_section(
            \'blog_plugin_settings_section\',
            \'\',
            \'\',
            \'blog_plugin_settings\'
        );

        add_settings_field(
            \'bp_input\',
            \'An input\',
            array( __CLASS__ , \'input_view\' ),
            \'blog_plugin_settings\',
            \'blog_plugin_settings_section\'         
        );

        ?>
        <div class="wrap">
            <h1>Blog Plugin Settings</h1>
            <form action="post" action="options.php">
                <?php 
                    settings_fields( \'bp_blog_plugin\' );
                    do_settings_sections( \'blog_plugin_settings\' );
                    submit_button();
                ?>
            </form>
        </div>
        <?php
    }

    public static function input_view(){
        echo(\'<input type="text" name="bp_input">\');
    }
}

BlogPlugin::run();

Edit

我已经删除了对不存在的函数的引用,并确认插件在我的安装上运行。(表单仍重定向到主页。)

1 个回复
SO网友:user3574603

睡了一个好觉后,我发现拼写错误非常明显。

我有:

<form action="post" action="options.php">
它应该是:

<form method="post" action="options.php">

结束

相关推荐

如何强制admin-ajax.php文件通过HTTPS加载?

我最近有一个网站100%支持HTTPS。前端和后端的所有资产都通过HTTPS成功调用,除了admin ajax。php。这会导致任何依赖于文件的功能失败,包括但不限于CF7、Elementor和其他使用AJAX提交的表单等。我得到的错误,你可以在截图中看到是“混合内容:页面位于”https://toursoft.co/contact-us/\' 已通过HTTPS加载,但请求了不安全的XMLHttpRequest终结点\'http://toursoft.co/wp-admin/admin-ajax.php\