Justin Tadlock 4 years ago First, let me apologize for my late reply to this topic. My computer broke on Tuesday morning, and I’ve been scrambling to get everything set back up and running. Multiple settings per control is possible. However, it requires that you have a custom control, which seems like what you have. First thing’s first. $settings is an array of key/value pairs. You’ll want any calls to your control to specifically set these. Let’s say you have 2 different fields that are passed into your control like this: 'settings' => array( 'default' => 'color_setting_name', 'secondary' => 'secondary_setting_name' ) In your to_json() method, you’ll need to specifically get any data that you want to pass to your control’s template. The default setting will be automatically set up. It’s the default. Any custom ones will need to be set up separately. So, in your custom to_json() method, you’d do something like this: $this->json['secondary_value'] = isset( $this->settings['secondary'] ) ? $this->get_value( 'secondary' ) : ''; $this->json['secondary_field_name'] = isset( $this->settings['secondary'] ) ? $this->get_field_name( 'secondary' ) : ''; Then, you can use data.secondary_value and data.secondary_field_name in your Underscore template. I also want to note that I haven’t really fully tested multiple settings per control. It wasn’t something high on the to-do list when I first developed this. But, it should work.