我正在尝试使用自己的css类参数向函数中添加默认WP文本小部件的副本。php,以便它出现在窗口小部件管理器中,并可以添加到侧栏中。
下面是我的第一次尝试,但我相信一定有比我现在做的更简单的方法。
这能以更简单的方式完成吗?
在功能上。php,我有这个。。。
$google_search = TEMPLATEPATH . "/google_search.php";require_once($google_search);
add_action(\'widgets_init\', create_function(\'\', "register_widget(\'My_Widget_Search\');"));
在google\\u搜索中。php,我有。。。(除textarea字段内容外,其他内容均正常工作,未保存)
<?php
class My_Widget_Search extends WP_Widget {
function My_Widget_Search() {
$widget_ops = array( \'classname\' => \'widget_search\', \'description\' => __( "Google Adsense Search Widget Placeholder" ) );
$this->WP_Widget(\'adsense_search\', __(\'Adsense Search Widget\'), $widget_ops);
}
function widget( $args, $instance ) {
extract( $args );
$title = apply_filters(\'widget_title\', empty( $instance[\'title\'] ) ? __( \'\' ) : $instance[\'title\']);
$text = apply_filters(\'widget_text\', empty( $instance[\'text\'] ) ? __( \'\' ) : $instance[\'text\']);
}
function update( $new_instance, $old_instance ) {
$instance = $old_instance;
$instance[\'title\'] = strip_tags($new_instance[\'title\']);
$instance[\'text\'] = $new_instance[\'text\'];
return $instance;
}
function form( $instance ) {
//Defaults
$instance = wp_parse_args( (array) $instance, array( \'title\' => \'\') );
$title = esc_attr( $instance[\'title\'] );
$text = $instance[\'text\'];
?>
<p><label for="<?php echo $this->get_field_id(\'title\'); ?>"><?php _e( \'Title:\' ); ?></label>
<input class="widefat" id="<?php echo $this->get_field_id(\'title\'); ?>" name="<?php echo $this->get_field_name(\'title\'); ?>" type="text" value="<?php echo $title; ?>" /></p>
<textarea class="widefat" rows="16" cols="20" id="<?php echo $this->get_field_id(\'text\'); ?>" name=""<?php echo $this->get_field_name(\'text\'); ?>"><?php echo $text; ?></textarea>
<?php
}
}