最新公告
  • 欢迎您光临大资源网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入我们
  • register_widget()函数

    register_widget()函数 最后编辑:2021-04-26
    增值服务: 自动发货 使用说明 安装指导 环境配置二次开发BUG修复

    register_widget()函数

    register_widget()函数是用来注册一个新的小工具。

    语法结构

    <?php register_widget( $widget_class ) ?>

    参数

    $widget_class指的是注册小工具的类的 extends WP_Widget

    实例

    <?php class ProductWidget extends WP_Widget {
    public function __construct() {
    $widget_pro = array ( //一个数组提供了Widget的一些基本信息
    ‘description’ => “设置侧边栏产品”
    );
    parent::__construct(‘pic’, “近期产品”,$widget_pro);
    }
    // $args中包含了4个值:before_title,after_title,before_widget,after_widget,
    分别是要显示在title和widget前后的html。
    // $instance是当前Widget的一些属性设置
    public function widget( $args, $instance ) {
    $url = $instance[ ‘depth’ ];
    $link = $instance[ ‘link’ ];
    $title = $instance[‘title’];
    extract( $args );
    echo $before_widget;
    ?>
    <div class=”pic”>
    <a href=”<?php echo $link; ?>”><img src=”<?php echo $url; ?>” title=”<?php echo $title; ?>” alt=”<?php echo $title; ?>” style=”max-width: 100%;”></a>
    </div>
    <?php
    }

    public function form( $instance ) {
    // Output admin widget options form
    $defaults = array(
    ‘depth’ => ‘-1’
    );
    $depth = $instance[ ‘depth’ ];
    $link = $instance[ ‘link’ ];
    $title = $instance[‘title’];
    // markup for form
    ?>
    <p>
    <label for=”<?php echo $this->get_field_id(‘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 esc_attr($title); ?>” />
    </p>
    <p>
    <label for=”<?php echo $this->get_field_id( ‘depth’ ); ?>”>填写图片地址</label>
    <input class=”widefat” type=”text” id=”<?php echo $this->get_field_id( ‘depth’ ); ?>” name=”<?php echo $this->get_field_name( ‘depth’ ); ?>” value=”<?php echo esc_attr( $depth ); ?>”>
    </p>
    <p>
    <label for=”<?php echo $this->get_field_id( ‘link’ ); ?>”>填写图片链接</label>
    <input class=”widefat” type=”text” id=”<?php echo $this->get_field_id( ‘link’ ); ?>” name=”<?php echo $this->get_field_name( ‘link’ ); ?>” value=”<?php echo esc_attr( $link ); ?>”>
    </p>
    <?php
    }
    public function update( $new_instance, $old_instance ) {
    // Save widget options
    $instance = $old_instance;
    $instance[ ‘depth’ ] = strip_tags( $new_instance[ ‘depth’ ] );
    $instance[ ‘link’ ] = strip_tags( $new_instance[ ‘link’ ] );
    $instance[‘title’] = strip_tags($new_instance[‘title’]);
    return $instance;
    }
    }
    function register_widgets() {
    register_widget( ‘ProductWidget’ );
    }
    add_action( ‘widgets_init’, ‘register_widgets’ );

    unregister_widget()函数用来删除默认的小工具

    语法结构

    <?php unregister_widget( $widget_class ) ?>

    $widget_class指的是一些已WordPress定义的类

    实例

    function remove_default_widgets() {
    unregister_widget(‘WP_Widget_Pages’); //Pages Widget 页面
    unregister_widget(‘WP_Widget_Calendar’); //Calendar Widget 日历
    unregister_widget(‘WP_Widget_Archives’); //Archives Widget 文章归档
    unregister_widget(‘WP_Widget_Media_Audio ‘); //Audio Player Media Widget 视频
    unregister_widget(‘WP_Widget_Media_Image ‘); //Image Media Widget 画廊
    unregister_widget(‘WP_Widget_Media_Video’); //Video Media Widget 音频
    unregister_widget(‘WP_Widget_Meta’); //Meta Widget 功能
    unregister_widget(‘WP_Widget_Search’); //Search Widget 搜索
    unregister_widget(‘WP_Widget_Text’); //Text Widget 文本
    unregister_widget(‘WP_Widget_Categories’); //Categories Widget 分类目录
    unregister_widget(‘WP_Widget_Recent_Posts’); //Recent Posts Widget 近期文章
    unregister_widget(‘WP_Widget_Recent_Comments’); //Recent Comments Widget 近期评论
    unregister_widget(‘WP_Widget_RSS’); //RSS Widget
    unregister_widget(‘WP_Widget_Tag_Cloud’); //Tag Cloud Widget 标签云
    unregister_widget(‘WP_Nav_Menu_Widget’); //Menus Widget 导航菜单
    unregister_widget(‘WP_Widget_Custom_HTML’) //Custom HTML Widget 自定义HTML
    }
    add_action(‘widgets_init’, ‘remove_default_widgets’); <br>

    猜你在找

    • 2021-04-26Hi,初次和大家见面了,请多关照!

    售后服务:

    • 售后服务范围 1、商业模板使用范围内问题免费咨询
      2、源码安装、模板安装(一般 ¥50-300)服务答疑仅限SVIP用户
      3、单价超过200元的模板免费一次安装,需提供服务器信息。
      付费增值服务 1、提供dedecms模板、WordPress主题、discuz模板优化等服务请详询在线客服
      2、承接 WordPress、DedeCMS、Discuz 等系统建站、仿站、开发、定制等服务
      3、服务器环境配置(一般 ¥50-300)
      4、网站中毒处理(需额外付费,500元/次/质保三个月)
      售后服务时间 周一至周日(法定节假日除外) 9:00-23:00
      免责声明 本站所提供的模板(主题/插件)等资源仅供学习交流,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担,有部分资源为网上收集或仿制而来,若模板侵犯了您的合法权益,请来信通知我们(Email: 3482249445@qq.com),我们会及时删除,给您带来的不便,我们深表歉意!

    Hi, 如果你对这款模板有疑问,可以跟我联系哦!

    联系作者
    升级SVIP尊享更多特权立即升级
    My title page contents
    召唤伊斯特瓦尔