我非常讨厌这个错误。根本不懂。
这是我的代码,您要关注的是foreach循环:
public function reset_theme_options(){
if($this->is_theme_options_array()){
foreach($this->_theme_option[\'admin_options\'] as $option_name=>$value){
if($value != false){
delete_option($option_name);
$http = new AisisCore_Http_Http();
wp_safe_redirect($http->get_current_url());
}
}
$this->_update_option();
}else{
$this->_theme_option = array();
$this->_update_option();
}
}
基本上,我所做的就是获取选项的名称,所以假设您将主题的所有选项存储在“My\\u theme”中,这是一个设置数组。
我所做的就是把它删除,它就这样工作了。
问题是我基本上是wp_safe_redirect()
) 刷新页面,我可以通过javascript之类的方式来完成,但我认为这种方式更好。
因此,一切正常,我收到了成功消息,选项重置时出现以下故障:
警告:无法修改标题信息-标题已由/var/www/wordpress/wp-includes/plugable中的(输出开始于/var/www/wordpress/wp-admin/menu-header.php:94)发送。php在线876
好的,我再次单击重置按钮,一切正常。
我在这个错误中的步骤是:
(首先,从全新开始,不保存任何选项)-保存一些选项,点击提交。然后在页面刷新后,单击重置、boom error(动臂错误)、options still saved(选项仍保存)、再次单击reset(重置)、boom options reset(动臂选项重置)。
帮助
最合适的回答,由SO网友:TheWebs 整理而成
解决这个问题的实际方法是在函数中加入以下内容。php文件:
function callback($buffer){
return $buffer;
}
function add_ob_start(){
ob_start("callback");
}
function flush_ob_end(){
ob_end_flush();
}
add_action(\'init\', \'add_ob_start\');
add_action(\'wp_footer\', \'flush_ob_end\');