WordPress 自定义小工具(Widget)开发教程
WordPress 小工具(Widget)是侧边栏、页脚等区域的模块化内容块。WordPress 自带了文本、分类、搜索等基础小工具,但开发自定义小工具能满足特定需求,如显示热门文章、社交媒体按钮、广告位等。
创建自定义小工具类
继承 WP_Widget 类创建小工具: '.$instance['content'].'class My_Custom_Widget extends WP_Widget { public function __construct() { parent::__construct('my_custom_widget', '我的自定义小工具', array('description'=>'显示自定义内容')); } public function widget($args, $instance) { echo $args['before_widget']; echo $args['before_title'].$instance['title'].$args['after_title']; echo '
注册小工具
使用 widgets_init 钩子注册:add_action('widgets_init', function(){ register_widget('My_Custom_Widget'); });
注册小工具区域(Sidebar)
在主题的 functions.php 中注册侧边栏:register_sidebar(array('name'=>'侧边栏','id'=>'sidebar-1','before_widget'=>'<aside class="widget">','after_widget'=>'</aside>','before_title'=>'<h3 class="widget-title">','after_title'=>'</h3>'));。然后在模板文件中使用 dynamic_sidebar('sidebar-1') 输出。
小工具区块化
WordPress 5.8+ 支持块小工具(Block Widget),可以将 Gutenberg 块放在小工具区域。如果你想让自定义小工具支持块编辑器,需要实现 block renderer 方法。
总结
自定义小工具是 WordPress 内容模块化的重要手段。掌握小工具开发,你就能为用户提供灵活可配置的内容模块。
