您可以使用JavaScript警报来执行您所要求的操作,但我能想到的唯一方法可能是添加大量不必要的复杂性。
我使用您示例中的代码编写了一个小PHP脚本。如果您有任何困难修改它为您的目的,请不要犹豫,让我知道。
<?php
// die if not uninstalling
if( !defined( \'WP_UNINSTALL_PLUGIN\' ) )
exit ();
// if the "act" variable hasn\'t been set, display a form
if (!isset($_GET["act"])) {
?>
<p>Would you like to keep the options configured by this plugin?</p>
<form action="<?php echo $_SERVER["REQUEST_URI"]; ?>">
<select name="act">
<option>Select choice..</option>
<option value="keep">Keep options</option>
<option value="delete">Delete options</option>
</select>
<input type="submit" value="Go" />
</form>
<?php
} else {
// if the "act" variable has been set, see if the user wants to delete the options..
if ($_GET["act"] == "delete") {
delete_option( \'my_options\' );
echo "Options deleted; uninstallation successful.";
return;
} else {
// .. or keep them
echo "Options kept; uninstallation successful.";
return;
}
}
?>
**编辑:首选路线**
好的,根据this post, 显然,您不应该/不能在uninstall.php
而不是基本删除选项等。
因此,我的建议是:在插件设置中创建一个选项,上面写着“保留删除设置”或类似的内容(在我的示例中称为“DELETE\\u OPTIONS”)。然后在uninstall.php
:
<?php
$options = get_option(\'MY_PLUGIN_OPTIONS\');
if ( true === $options[\'DELETE_OPTIONS\'] ) {
delete_option(\'MY_PLUGIN_OPTIONS\');
}
?>
你好Duncan