I have built a widget class such as (using pear naming standards):
class CoreTheme_Adminpanel_Widgets_Download extends WP_Widget{
function CoreTheme_Adminpanel_Widgets_Download(){
parent::__construct( false, 'Aisis Download Button' );
$aisi_widget_options = array( 'classname' => 'download', 'description' => __('This widget will allow you to display a download button.', 'downlaod') );
$aisis_control_options = array( 'width' => 300, 'height' => 350, 'id_base' => 'download-widget' );
}
function widget($args, $instance){
extract( $args );
$url = $instance['url'];
$title = $instance['title'];
$show_info = $instance['info'];
echo $before_widget;
?>
<a href="<?php if($url){echo $url;}?>" class="btn btn-success btn-xlarge"><?php if($title){echo $title;}?></a>
<div class="well"><p><?php if($show_info){echo $show_info; }?></p></div>
<?php
echo $show_info;
echo $after_widget;
}
function update($new_instance, $old_instance){
$instance = $old_instance;
$instance['url'] = strip_tags( $new_instance['url'] );
$instance['title'] = strip_tags( $new_instance['title'] );
$instance['info'] = $new_instance['info'];
return $instance;
}
function form(){
$instance = wp_parse_args((array)$instance);
echo '<label>Download Url</label>';
if(!isset($insance['url'])){
echo '<input type="url" name="'.$this->get_field_name('url').'" />';
}else{
echo '<input type="url" name="'.$this->get_field_name('url').'" value="'.$instance['url'].'"/>';
}
echo '<label>Download Button Title</label>';
if(!isset($insance['title'])){
echo '<input type="text" name="'.$this->get_field_name('title').'" />';
}else{
echo '<input type="text" name="'.$this->get_field_name('title').'" value="'.$instance['title'].'"/>';
}
echo '<label>Information</label>';
if(!isset($insance['info'])){
echo '<textarea name="'.$this->get_field_name('info').'"></textarea>';
}else{
echo '<textarea name="'.$this->get_field_name('info').'">'.$instance['info'].'</textarea>';
}
}
}
// Register the widget
function register_download() {
register_widget( 'CoreTheme_Adminpanel_Widgets_Download' );
}
// Add said action
add_action( 'widgets_init', 'register_download' );
My question is, according too: register_widget() I did every thing correctly, so where's my widget?
parent::__construct( 'download-widget', __('Aisis Download Buton', 'download'), $aisi_widget_options, $aisis_control_options );? – toscho♦ Mar 21 at 20:56$this->WP_Widget(withparent::__construct(. Your current code cannot work, that's why I asked @AndyAdams. – toscho♦ Mar 21 at 21:22