Le squelette de tous widget WordPress
Il faut placer ce code dans un fichier dans le répertoire `wp-content/plugins/`.
Remarques :
- Le nom du fichier n’importe que peu.
- Même si ce n’est qu’un widget, ça reste un plugin. Il faut d’abord l’activer dans le panneau de liste des plugins avant de pouvoir l’ajouter dans une sidebar.
<?php
/*
Plugin Name: Le nom du widget
Plugin URI: http://www.dragnucs.com/
Description: Une description
Author: Dragnucs
Version: 1
Author URI: http://www.dragnucs.com/
*/
class my_widget_widget extends WP_Widget {
/** constructor -- À renommer, mais garder la forme mon_widget_widget
* Doit porter le même nom que la class.
*/
function my_widget_widget() {
parent::WP_Widget(false, $name = 'My widget');
}
/** @see WP_Widget::widget -- Ne pas renommer */
function widget($args, $instance) {
extract( $args );
$title = apply_filters('widget_title', $instance['title']);
$text = $instance['text']
/*
* Insérez le code du widget ici
*/
?>
<?php echo $before_widget; ?>
<?php if ( $title )
echo $before_title . $title . $after_title; ?>
<?php echo $instance['text']; ?>
<?php echo $after_widget; ?>
<?php
}
/** @see WP_Widget::update -- Ne pas renommer */
function update($new_instance, $old_instance) {
$instance = $old_instance;
$instance['title'] = strip_tags($new_instance['title']);
$instance['text'] = strip_tags($new_instance['text']);
return $instance;
}
/** @see WP_Widget::form -- Ne pas renommer */
function form($instance) {
$title = esc_attr($instance['title']);
$text = esc_attr($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>
<p>
<label for="<?php echo $this->get_field_id('text'); ?>"><?php _e('Text'); ?>:</label>
<input class="widefat" id="<?php echo $this-/>get_field_id('text'); ?>" name="<?php echo $this->get_field_name('text'); ?>" type="text" value="<?php echo $text; ?>" />
</p>
<?php
}
}
add_action('widgets_init', create_function('', 'return register_widget("my_widget_widget");'));
?>
Continuer la lecture “Créer votre propre widget WordPress” »





