我正在从头开始创建Wordpress主题,我想在主题选项更改时使用主题选项保存一个文件。
我在想:
do_action(\'admin_init\', \'my_custom_function\');
function my_custom_function(){
save_file();
...
}
但在这种情况下,只要加载管理区域,文件就会被保存。
在仪表板上,主题创建表单来管理主题选项,如下所示:
<form method="post" action="options.php">
<?php settings_fields( \'theme-settings-group\' ); ?>
<?php do_settings_sections( \'theme-settings-group\' ); ?>
// form in here
<?php submit_button(); ?>
</form>
此表单将信息发送到选项。php,它根据指定的设置组将主题选项保存在数据库上。
我希望在“options.php”中保存内容时随时触发一个函数。
你们能推荐一下吗?桑克斯
最合适的回答,由SO网友:Marcello Perri 整理而成
以下是解决方案:
update_option_{option_name}: 更新名为“option\\u name”的选项后运行。例如,对于名为“foo”的选项:
add_action(\'update_option_foo\', \'my_custom_function\', 10, 2);
update_option: 在更新选项之前运行。示例:
add_action(\'update_option\', \'my_custom_function\', 10, 3);
updated_option: 更新选项后运行。示例:
add_action(\'updated_option\', \'my_custom_function\', 10, 3);