切换 Wordpress 主题时如何维护我的设置?
How can I maintain my settings when switching Wordpress themes?
我目前正在开发一系列 Wordpress 主题。这些主题都需要有自定义主题选项,它们都会有自定义主题选项页面。但是,某些主题具有其他主题中未使用的选项。
当我切换主题、在新主题上自定义主题选项并保存选项时,我注意到该主题未使用的所有选项都丢失了,切换回来时必须重新设置。有没有办法确保这些选项保留在数据库中,即使它们没有被当前活动主题使用?
您可以使用多种功能来维护您的主题选项。
当一个主题被激活时,会有一个钩子,叫做after_switch_theme
。
最好的方法,如果你创建一个数组,其中默认选项keys/values是。
所以创建一个这样的数组:
$theme_default_options = array (
//.....
);
所以你可以使用来设置一个选项:
add_action('after_switch_theme', 'theme_setup_function');
如果你想删除你的选项,或者操作数据库,当你切换旧主题时,你可以使用switch_theme
。这发生在停用时:
add_action('switch_theme', 'theme_deactivation_function');
还有3个操作选项的功能:
add_option($option, $value);
update_option($option, $value);
delete_option($option);
并且在任何 switch 函数中,您可以在默认选项数组上使用 foreach 循环。
为所有主题的所有选项使用唯一的名称。例如,对于主题 pingpong
,使用像 pingpong_homepage
这样的前缀。
我目前正在开发一系列 Wordpress 主题。这些主题都需要有自定义主题选项,它们都会有自定义主题选项页面。但是,某些主题具有其他主题中未使用的选项。
当我切换主题、在新主题上自定义主题选项并保存选项时,我注意到该主题未使用的所有选项都丢失了,切换回来时必须重新设置。有没有办法确保这些选项保留在数据库中,即使它们没有被当前活动主题使用?
您可以使用多种功能来维护您的主题选项。
当一个主题被激活时,会有一个钩子,叫做after_switch_theme
。
最好的方法,如果你创建一个数组,其中默认选项keys/values是。
所以创建一个这样的数组:
$theme_default_options = array (
//.....
);
所以你可以使用来设置一个选项:
add_action('after_switch_theme', 'theme_setup_function');
如果你想删除你的选项,或者操作数据库,当你切换旧主题时,你可以使用switch_theme
。这发生在停用时:
add_action('switch_theme', 'theme_deactivation_function');
还有3个操作选项的功能:
add_option($option, $value);
update_option($option, $value);
delete_option($option);
并且在任何 switch 函数中,您可以在默认选项数组上使用 foreach 循环。
为所有主题的所有选项使用唯一的名称。例如,对于主题 pingpong
,使用像 pingpong_homepage
这样的前缀。