为什么小部件更新功能需要$OLD_INSTANCE? 时间:2014-05-22 作者:Yoav Kadosh 在函数的PHPdoc中WP_Widget::update() 位于以下位置wp-includes/widgets.php 上面说:/** * ... * This function should check that $new_instance is set correctly. * The newly calculated value of $instance should be returned. * If "false" is returned, the instance won\'t be saved/updated. * ... */ 我不清楚为什么$old_instance 更新值时需要,以及如何使用它来验证$new_instance 设置正确。 1 个回复 最合适的回答,由SO网友:fuxia 整理而成 正如注释所述,您应该验证新实例的值。如果其中一个值无效,会发生什么情况?您可以设置预定义的默认值,也可以使用旧实例中的值,因为该值必须有效。因此,一个非常简单的更新代码可以如下所示:function update( $new_instance, $old_instance ) { return array_merge( $old_instance, $new_instance ); } 没有更好的方法来获取这些信息,所以WordPress只是在您需要时传递它。但你可以完全无视它。 结束 文章导航