我开发了一个主题,将一些选项存储到数据库中。当用户删除主题时,我希望从数据库中删除选项数据。但我不知道这样做有什么动作。或者有什么替代的方法来实现这一点。
发布于 2013-07-26 11:01:02
我认为这是不可能的行动钩子。你只能删除一个主题,从管理面板后,它已被禁用。即使存在用于删除(而不是禁用)主题的动作钩子,当您能够点击删除链接时,您的主题functions.php也不会运行。
由于这是您自己使用的个人主题,因此您可以使用phpMyAdmin或options插件随时从" Options“数据库表中删除这些选项。
另一种方法是在主题的options页面中包含某种类型的“卸载”按钮,该按钮将从数据库中删除选项并禁用主题,可能是激活TwentyTwelve,或者让用户在卸载完成后选择要激活的主题。
发布于 2013-07-22 06:21:14
add_action('switch_theme', 'mydeactivationfunction', 10 , 2);
function mydeactivationfunction() {
delete_option( 'option_name' ); //do this for each option your deleting
}
如果这在主题functions.php中不起作用,您可以将其放在一个小插件中,当您希望在开关上清除设置时,只需激活/禁用它即可。
https://wordpress.stackexchange.com/questions/107369
复制