' : $options['text']; // It's important to use the $before_widget, $before_title, // $after_title and $after_widget variables in your output. echo $before_widget; echo $before_title . $title . $after_title; echo $text; echo $after_widget; } // This is the function that outputs the form to let users edit // the widget's title and so on. It's an optional feature, but // we'll use it because we can! function widget_safewidget_control() { // Collect our widget's options. $options = get_option('widget_safewidget'); // This is for handing the control form submission. if ( $_POST['safewidget-submit'] ) { // Clean up control form submission options $newoptions['title'] = strip_tags(stripslashes($_POST['safewidget-title'])); $newoptions['text'] = strip_tags(stripslashes($_POST['safewidget-text'])); } // If original widget options do not match control form // submission options, update them. if ( $options != $newoptions ) { $options = $newoptions; update_option('widget_safewidget', $options); } // Format options as valid HTML. Hey, why not. $title = htmlspecialchars($options['title'], ENT_QUOTES); $text = htmlspecialchars($options['text'], ENT_QUOTES); // The HTML below is the control form for editing options. ?>