信科网络 · 11 年只做 WordPress | 建站 / 主题 / 插件 / 商城 / 迁移 / 托管 | 累计服务 3000+ 企业 | 源码全交付
服务热线:13280692153 邮箱:web@wordpressx.com
工作日 08:30-18:0013280692153 免费诊断
首页/WordPress 教程/register_widget()函数
BLOG

register_widget()函数

分类 发布 2022-08-19

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="/uploads/img/<?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()函数用来删除默认的小工具

语法结构

register_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>
INDUSTRIAL BELT

扎根中国制造产业带
懂工厂,才懂出海

从胶东半岛到珠三角,从长三角到中原腹地,每一片产业集群都有自己的出口节奏与买家画像。信科网络长期扎根产业一线,把工厂的产品语言翻译成海外采购商听得懂的搜索语言,让每一分投入都对着真实的询盘去。

jiangjin

江津外贸网站建设

重庆市江津区,是一个历史文化悠久的城市,以地处长江要津而得名。江津位于重庆西南长江之滨,距渝中区公路里程50公里;铁路里程65公里;水路里程72公里。江津城区气候特征与重庆相近,但综合…

fengjie

奉节外贸网站建设

奉节县位于重庆市东部,地处四川盆地东端,地理坐标为东经109°1′17″—109°45′58″,北纬30°29′19″—31°22′33″。县境东邻巫山县,南界湖北省恩施土家族苗族自治州,西连云阳县,北接巫溪县。境内有…

lulong

卢龙外贸建站

卢龙县地处河北省东北部、隶属于秦皇岛市,总面积961平方公里,全县辖12个乡镇、548个行政村,总人口41.5万人,其中农业人口38万人。卢龙,历史悠久,人杰地灵。1988年,卢龙县被确定为全国对…

yubei

渝北外贸建站

重庆市渝北区位于重庆市区北部,是1994年12月17日经国务院批准,在撤销原江北县建制基础上设立的新区。渝北区是重庆市的行政区,原为江北县,南端为主城区一部分的龙溪镇,北端与四川省接壤,…

huinong

惠农WordPress建站

塞北明珠——惠农区,地处宁夏回族自治区最北端,东临滔滔黄河,西依巍巍贺兰山,北与内蒙乌海接壤,总面积1088平方公里,人口20.9万。惠农区是2004年2月经国务院批准,撤消原惠农县和石嘴山区而…

wushan

巫山WordPress建站

巫山位于重庆市东北部,三峡库区腹心,素有“渝东门户”之称,地跨长江巫峡两岸。东邻湖北省巴东县,西接奉节县,南与湖北省建始县毗连,北与巫溪县及神农架林区接壤。县城位于大宁河与长江交汇…

haiyuan

海原Shopify建站

位于中国宁夏回族自治区中南部。1991年底人口31.15万。回族为主,有汉、满、蒙古、东乡等民族。西汉属安定郡。清同治十三年(1874)设海城县。民国三年(1914)改海原县。地形复杂,多山地。年…

kaizhou

开州Shopify建站

开州区隶属于重庆市,位于重庆市东北部,三峡库区小江支流回水末端,介于北纬30°49′30″-31°41′30″、东经107°55′48″-108°54′之间,西邻四川省开江县,北依大巴山接城口县和四川省宣汉县,东毗云…

qingtongxia

青铜峡外贸推广

青铜峡市位于黄河上游宁夏平原中部,地势平坦,牛首、峡口两山对峙,黄河穿峡而过,山光水色相映,宛如开然铜镜,“青铜峡”由此而得名。地处西北内陆,东部季风区与西部干旱区域的交汇地带,属…

beibei

北碚外贸推广

北碚区位于重庆市区西北郊的缙云山下,嘉陵江畔,幅员面积753平方公里,人口63万,是重庆的风景旅游区和智力型清洁工业基地。本世纪20年代末,由爱国实业家卢作孚先生开拓,抗战时期为陪都重庆…

nanchuan

南川Google SEO

南川地处四川盆地东南边缘与云贵高原过渡地带,位于重庆市南部,东南与贵州省道真、正安、桐梓县接壤,东北与武隆县为邻,北接涪陵区,西连巴南区、綦江县、万盛区。总面积2602平方千米。总人…

zhongwei

中卫Google SEO

中卫地处黄河前套之首,位于宁夏回族自治区中西部、宁、甘、内蒙古三省区交界点上,辖中宁、海原两县和中卫城区,总面积16986.1平方公里,其中川区面积3681.1平方公里,占21.67%,山区面积1330…

tongnan

潼南GEO优化

潼南县位于重庆市西北部最前沿。是川渝握手区腹地东西南北交通自然便捷走向的交汇点及区域几何中心,是成渝经济区的腹地中心,是重庆西部凸入川中腹地最远、毗邻四川县市最多的对外开放最前沿…

yuzhong

渝中GEO优化

渝中区,位于长江上游地区、重庆大都市区,属重庆主城九区之一。地处在长江、嘉陵江交汇地带,由于两江环抱,形似半岛,又名渝中半岛。渝中区作为重庆市政治、经济、文化以及商贸流通中心,别…

yongning

永宁谷歌SEM

永宁县地处宁夏平原中部,东临黄河,西倚贺兰山,是宁夏回族自治区首府银川市的郊县。全县国土面积1020平方公里,辖五镇一乡一个街道办事处,总人口20.4万人,有汉、回、满等13个民族,其中回…

fuling

涪陵谷歌SEM

重庆市涪陵区,邑枕长、乌两江,素为乌江流域物资集散地,有渝东南门户之称,是闻名遐迩的中国“榨菜之乡”。全区幅员面积2946平方公里,辖1个经济技术开发区、1个私营经济示范区和44个乡镇、街…

lingwu

灵武Facebook广告

灵武,古称灵州。地处宁夏引黄灌区的精华地带,素有“塞上江南”之美誉。全市总面积4639平方公里,总人口23.7万,其中回族人口11.1万人。全市非农业人口11.5万人,占总人口的48.5%。1996年5月灵武…

helan

贺兰Facebook广告

 贺兰县位于中国黄土高原西北内陆,宁夏回族自治区北部,属大陆性气候,中温带干旱气候区。土地总面积按1987年土地调查为1254.6平方公里。旅游资源丰富,历史积淀深厚。粮食作物以小麦、…

jingxian

景县Yandex推广

景县位于河北省东南部,大运河西岸,全县辖9镇7乡,849个行政村,总面积1183平方公里。全县呈簸箕形,由西南向东北逐渐倾斜坦,最高点海拔25米,最低点14.1米。属暖温带半湿润大陆性气候,四季…

xiongxian

雄县Yandex推广

河北省保定市雄县位于东经116°06',北纬38°59'。平均海拔10米。处于冀中平原的京、津、保三角腹地,南倚“华北明珠”白洋淀,北靠“京南小香港”___白…

zaoqiang

枣强TikTok推广

枣强县位于河北省东南部,衡水市南端,界于东经115°35′~58′,北纬37°08′~35′之间,总面积892.3平方公里。东隔清凉江与景县、故城相望,西临冀州市,南靠邢台地区南宫市,北接桃城区、武邑县。…

为什么一定要选懂产业带的出海服务商?建材丝网的欧洲建筑商看资质与交期,工业橡塑的中东工程商问耐温与工况,毛皮服饰的俄罗斯分销商算的是季节与毛利。买家不同,决策逻辑就不同;信科网络把这些差异拆进网站结构、关键词地图和投放策略里,用他们习惯的方式出现在他们搜索的地方。