使用Verify删除插件选项

时间:2019-11-21 作者:Rick Hellewell

卸载插件的过程记录如下:https://developer.wordpress.org/plugins/plugin-basics/uninstall-methods/ . 示例代码有:

// if uninstall.php is not called by WordPress, die
if (!defined(\'WP_UNINSTALL_PLUGIN\')) {
    die;
}

$option_name = \'wporg_option\';

delete_option($option_name);

// for site options in Multisite
delete_site_option($option_name);
但是我找不到关于如何询问用户是否希望从wp选项表中删除插件选项的代码示例。

如果我使用卸载。php删除我的插件的过程中,是否有一种公认的/最佳实践的方法来询问用户是否也想删除插件的选项?可能有这样一个实例,用户可能希望稍后重新安装,而不必重新执行所有选项。

1 个回复
SO网友:butlerblog

对此有各种各样的观点,但一般来说,如果你要“删除”(而不是简单的“停用”),你不一定需要确认它。然而,你当然可以。

通常的方法是包括一个设置,以便在删除或不删除时删除所有设置。假设插件设置中有一个复选框“全部删除”,如果未选中,则无法清除选项。(同样,在本例中,假设所有设置都是单个数组,设置为键-但这只是一个示例)

// if uninstall.php is not called by WordPress, die
if (!defined(\'WP_UNINSTALL_PLUGIN\')) {
    die;
}

$option_name = \'wporg_option\';

// $option_name[\'delete_all\'] contains my option setting to delete all settings.
if ( 1 == $option_name[\'delete_all\'] ) {

     delete_option($option_name);

     // for site options in Multisite
     delete_site_option($option_name);

}

相关推荐