__( 'A widget To Display Toggle', 'accesspress-basic' ) ) ); } /** * Helper function that holds widget fields * Array is used in update and form functions */ private function widget_fields() { $status = array( 'close' => 'close', 'open' => 'open' ); $fields = array( 'toggle_title' => array( 'apbasic_widgets_name' => 'toggle_title', 'apbasic_widgets_title' => __('Toggle Title','accesspress-basic'), 'apbasic_widgets_field_type' => 'text' ), 'toggle_content' => array( 'apbasic_widgets_name' => 'toggle_content', 'apbasic_widgets_title' => __('Toggle Content','accesspress-basic'), 'apbasic_widgets_field_type' => 'contentarea', 'apbasic_widgets_allowed_tags' => '
'
),
'toggle_status' => array(
'apbasic_widgets_name' => 'toggle_status',
'apbasic_widgets_title' => __('Toggle Status','accesspress-basic'),
'apbasic_widgets_field_type' => 'select',
'apbasic_widgets_field_options' => $status
),
);
return $fields;
}
/**
* Front-end display of widget.
*
* @see WP_Widget::widget()
*
* @param array $args Widget arguments.
* @param array $instance Saved values from database.
*/
public function widget( $args, $instance ) {
extract( $args );
$toggle_title = empty($instance['toggle_title']) ? false : $instance['toggle_title'];
$toggle_content = empty($instance['toggle_content']) ? false : $instance['toggle_content'];
$toggle_status = empty($instance['toggle_status']) ? false : $instance['toggle_status'];
echo $before_widget;
?>
'; ?>
widget_fields();
// Loop through fields
foreach( $widget_fields as $widget_field ) {
extract( $widget_field );
// Use helper function to get updated field values
$instance[$apbasic_widgets_name] = accesspress_basic_widgets_updated_field_value( $widget_field, $new_instance[$apbasic_widgets_name] );
echo $instance[$apbasic_widgets_name];
}
return $instance;
}
/**
* Back-end widget form.
*
* @see WP_Widget::form()
*
* @param array $instance Previously saved values from database.
*
* @uses accesspress_pro_widgets_show_widget_field() defined in widget-fields.php
*/
public function form( $instance ) {
$widget_fields = $this->widget_fields();
// Loop through fields
foreach( $widget_fields as $widget_field ) {
// Make array elements available as variables
extract( $widget_field );
$apbasic_widgets_field_value = isset( $instance[$apbasic_widgets_name] ) ? esc_attr( $instance[$apbasic_widgets_name] ) : '';
accesspress_basic_widgets_show_widget_field( $this, $widget_field, $apbasic_widgets_field_value );
}
}
}