首先,我们需要创建一个自定义的小部件类,这个类继承自 WP_Widget
。以下是一个简单的示例代码:
class Custom_Widget extends WP_Widget {
public function __construct() {
parent::__construct(
'custom_widget', // 小部件ID
'自定义小部件', // 小部件名称
array( 'description' => '这是一个自定义的小部件' ) // 小部件描述
);
}
public function widget( $args, $instance ) {
// 输出小部件内容
echo $args['before_widget'];
echo $args['before_title'] . apply_filters( 'widget_title', $instance['title'] ) . $args['after_title'];
echo '<p>这是一个自定义的小部件</p>';
echo $args['after_widget'];
}
public function form( $instance ) {
// 渲染小部件表单
$title = ! empty( $instance['title'] ) ? $instance['title'] : '';
?>
<!-- 标题表单 -->
<p>
<label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( '标题:' ); ?></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 esc_attr( $title ); ?>">
</p>
<?php
}
public function update( $new_instance, $old_instance ) {
// 保存小部件设置
$instance = array();
$instance['title'] = ( ! empty( $new_instance['title'] ) ) ? strip_tags( $new_instance['title'] ) : '';
return $instance;
}
}
在上述代码中,我们创建了一个名为 Custom_Widget
的自定义小部件类,它继承自 WP_Widget
。在构造函数中,我们定义了小部件的 ID、名称和描述。在 widget
方法中,我们输出了小部件的 HTML 内容。在 form
方法中,我们渲染了小部件的表单。在 update
方法中,我们保存了小部件的设置。
接下来,我们需要在 functions.php
文件中注册这个小部件。以下是示例代码:
function register_custom_widget() {
register_widget( 'Custom_Widget' );
}
add_action( 'widgets_init', 'register_custom_widget' );
在上述代码中,我们定义了一个名为 register_custom_widget
的函数,它通过 register_widget
函数注册了我们创建的自定义小部件类。
现在,我们的自定义小部件已经准备就绪,可以在 WordPress 后台的小部件管理界面中使用了。