Unable to delete option

时间:2018-12-05 作者:Alt C

我可以使用表单操作删除选项admin-post.php 但点击按钮后会出现空白页

<form action="<?php echo admin_url(\'admin-post.php\'); ?>" method="post">
  <input type="hidden" name="action" value="my_media_update">
  <input type="submit" value="Update Media Titles and ALT Text">
</form>

public function kh_update_media_seo() {
    delete_option(\'myoption\');
}
add_action( \'admin_post_my_media_update\', \'kh_update_media_seo\' );
如果我更改action ="admin_url(\'admin.php?page=mycustomoptionspage\');" 它重定向到我的原始页面,但不删除选项->delete_option(\'myoption\')

1 个回复
最合适的回答,由SO网友:Krzysiek Dróżdż 整理而成

你就快到了。。。如果您将请求发送到admin-post.php, 然后,只有您的回调才会打印响应。由于您的回调没有打印任何内容,因此您将得到一个空白屏幕。

大多数情况下,您要做的是在这样的回调中执行重定向:

public function kh_update_media_seo() {
    delete_option(\'myoption\');
    wp_redirect( admin_url(\'admin.php?page=mycustomoptionspage\') );
    exit;
}
add_action( \'admin_post_my_media_update\', \'kh_update_media_seo\' );

相关推荐

我可以更改/wp-admin/Options-General al.php的名称吗?

我问这个问题是因为我正在编写Wordpress插件,我希望能够检测WP Admin何时使用options general。php。目前,我只是直接检查URL,看看它是否以options general结尾。但是如果Wordpress允许安装更改此文件的文件名,那么我的插件可能无法在某些安装上运行。