• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧
您的位置:首页 > CMS教程 >建站教程 > 怎么为WordPress小工具添加CSS类选项

怎么为WordPress小工具添加CSS类选项

作者:站长图库 字体:[增加 减小] 来源:互联网

站长图库向大家介绍了WordPress小工具,添加CSS类选项等相关知识,希望对您有所帮助

下面给大家介绍怎么为WordPress小工具添加CSS类选项,希望对需要的朋友有所帮助!


WordPress 小工具可以重复使用,相同的小工具样式也是相同的,如果想自定义某个前台添加的小工具样式,与其它不同,可以通过查看原代码,找到它的id,比如搜索小工具会看到类似的:

<section id="search-2" class="widget widget_search">

其中search-2就是这个小工具的ID,可以用#search-2定义样式,不过这个后缀的编号并不是固定的,下次添加可能会变,需要再次编辑之前的样式,有些麻烦。

可以通过下面的代码,给现有的小工具统一增加CSS类选项,将代码添加到当前主题函数模板functions.php中即可,效果如图:


608698b69a328.png


代码一:

只加一个CSS类选项

function zm_widget_form_extend( $instance, $widget ) {    if ( !isset($instance['classes']) )    $instance['classes'] = null;    $row = "<p>\n";    $row .= "\t<label for='widget-{$widget->id_base}-{$widget->number}-classes'>CSS类</label>\n";    $row .= "\t<input type='text' name='widget-{$widget->id_base}[{$widget->number}][classes]' id='widget-{$widget->id_base}-{$widget->number}-classes' class='widefat' value='{$instance['classes']}'/>\n";    $row .= "</p>\n";    echo $row;    return $instance;}add_filter('widget_form_callback', 'zm_widget_form_extend', 10, 2);function zm_widget_update( $instance, $new_instance ) {    $instance['classes'] = $new_instance['classes'];    return $instance;}add_filter( 'widget_update_callback', 'zm_widget_update', 10, 2 );  function zm_dynamic_sidebar_params( $params ) {    global $wp_registered_widgets;    $widget_id    = $params[0]['widget_id'];    $widget_obj    = $wp_registered_widgets[$widget_id];    $widget_opt    = get_option($widget_obj['callback'][0]->option_name);    $widget_num    = $widget_obj['params'][0]['number'];          if ( isset($widget_opt[$widget_num]['classes']) && !empty($widget_opt[$widget_num]['classes']) )    $params[0]['before_widget'] = preg_replace( '/class="/', "class=\"{$widget_opt[$widget_num]['classes']} ", $params[0]['before_widget'], 1 );    return $params;}add_filter( 'dynamic_sidebar_params', 'zm_dynamic_sidebar_params' );


代码二:

添加ID及CSS类下拉选项

function zm_widget_form_extend( $instance, $widget ) {    if ( !isset( $instance['classes'] ) )    $instance['classes'] = null;          if ( !isset( $instance['custom_id'] ) )    $instance['custom_id'] = null;          $class_prefix = 'widget-';     $myclass = array(        'default'  => '默认',        'blue'     => '蓝色',        'yellow'   => '黄色',        'black'    => '黑色',    );          $row = "<p>\n";    $row .= "\t<label for='widget-{$widget->id_base}-{$widget->number}-custom_id'>添加ID</label>\n";    $row .= "\t<input type='text' name='widget-{$widget->id_base}[{$widget->number}][custom_id]' id='widget-{$widget->id_base}-{$widget->number}-custom_id' class='widefat' value='{$instance['custom_id']}' />\n";    $row .= "\t<label for='widget-{$widget->id_base}-{$widget->number}-classes'>CSS类</label>\n";    $row .= "\t<select name='widget-{$widget->id_base}[{$widget->number}][classes]' id='widget-{$widget->id_base}-{$widget->number}-classes' class='widefat'>";    foreach( $myclass as $key => $class ) {        $selected = null;        if( $class_prefix.$key == $instance['classes'] ) $selected = 'selected = "selected"';        $row .= "\t<option value='$class_prefix$key' $selected>$class</value>\n";    }    $row .= "</select>\n";    echo $row;    return $instance;}add_filter('widget_form_callback', 'zm_widget_form_extend', 10, 2);  function zm_widget_update( $instance, $new_instance ) {    $instance['classes'] = $new_instance['classes'];    $instance['custom_id'] = $new_instance['custom_id'];    return $instance;}add_filter( 'widget_update_callback', 'zm_widget_update', 10, 2 );  function zm_dynamic_sidebar_params( $params ) {    global $wp_registered_widgets;    $widget_id  = $params[0]['widget_id'];    $widget_obj = $wp_registered_widgets[$widget_id];    $widget_opt = get_option($widget_obj['callback'][0]->option_name);    $widget_num = $widget_obj['params'][0]['number'];          if ( isset( $widget_opt[$widget_num]['classes'] ) && !empty( $widget_opt[$widget_num]['classes'] ) )    $params[0]['before_widget'] = preg_replace( '/class="/', "class=\"{$widg
  


 
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 怎么为WordPress小工具添加CSS类选项
  • 如何禁用WordPress5.8小工具区块编辑模式

相关文章

  • 浅谈小程序如何授权登录,获取信息和手机号
  • 去除织梦CMS后台头部多的一行空白
  • JS数组如何删除指定元素
  • 介绍PHP + MySQL 实现数据分页显示
  • Js中json字符串怎样转json对象
  • Windows7安装OpenSSH服务的步骤详解(亲测有效)
  • 企业网站在百度竞价中的费用问题
  • JavaScript如何处理并行请求?四种方式浅析
  • PhotoShop制作漂亮的蓝色发光文字效果教程
  • PhotoShop绘制水晶质感3D立体按钮制作教程

文章分类

  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧

最近更新的内容

    • Node.js怎么读写json文件?方法介绍
    • PHP怎么判断一个客户端是手机还是电脑
    • 聊聊怎么将小程序项目转为uni-app项目
    • Node.js中JSON格式和Excel格式的双向转换
    • 详解vue2项目优雅封装echarts地图的方法
    • 解决微信video、audio 无法自动播放的问题
    • 织梦怎么去掉index.html
    • Photoshop设计碳纤维风格图标教程
    • 浅析Angular中HttpClientModule模块有什么用?怎么用?
    • 一起来了解下Bootstrap中的tab选项卡

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有