如何在小部件开发中获取选项值

我正在尝试学习WordPress的Widgets API并创建自己的Widget。
问题:当我尝试回显$ instance [‘ platform’ ]时, 什么也没出现。
我希望能够获得价值。

class Practice_Widget extends WP_Widget { function __construct() { $widget_ops = array( 'classname' => 'my-widget', 'description' => 'Second Widget' ); parent::__construct('my_little_widget', 'Practice Second', $widget_ops); }public function widget($args, $instance) { echo $args['before_widget']; echo $instance['platform']; echo $args['after_widget']; }public function form ($instance) { ?> < p> < label for = "< ?php echo esc_attr($this-> get_field_id('title')); ?> "> Title: < /label> < select name="< ?php echo esc_attr($this-> get_field_name('platform')); ?> )"> < option value="http://www.srcmini.com/face"> Facebook< /option> < option value="http://www.srcmini.com/insta"> Instagram< /option> < /select> < /p> < ?php }public function update ($new_instance, $old_instance) { $instance = array(); $instance['platform'] = ! empty($new_instance['platform']) ? $new_instance['platform'] : ''; } }

#1你的update()函数需要返回$ instance数组, 否则WordPress将无法保存新值(因此, 你在前端看不到任何内容的原因):
public function update ($new_instance, $old_instance) { $instance = array(); $instance['platform'] = ! empty($new_instance['platform']) ? $new_instance['platform'] : ''; return $instance; }

【如何在小部件开发中获取选项值】有关更多详细信息, 请参见Widgets API文档。

    推荐阅读