WordPress中使主题支持小工具以及添加插件启用函数

https://www.jb51.net/article/76810.htm

 

这篇文章主要介绍了WordPress中使主题支持widget以及添加插件启用函数的方法,使WP可以使用小工具widget与通过register_activation_hook()来添加启用插件的函数,需要的朋友可以参考下

 

让主题支持小工具
WordPress 的小工具(widget)是一大特色,它让用户自由拖动组合内容,而且任何插件和主题都可以添加一个额外的小工具,增加扩展性。

默认情况下,一个主题并不会支持小工具,需要主题开发者启用小工具功能并把小工具在相应的前台位置调用出来,这样用户才能在后台直接拖动生成侧边栏。

本文就来教你如何激活小工具功能,并且添加一个侧边栏,最后在前台显示出来。

注册侧边栏

默认的,后台外观下是没有 “小工具” 这个菜单按钮的,如果想要让他出现,就至少需要注册一个侧边栏,否则即使显示出来,也没有用。

注册一个侧边栏需要使用 register_sidebar() 函数,用法比较简单,只有一个属性,填上需要的信息就行了。

1.在主题function中添加以下代码

  1. 复制代码

    <?php
    /**在function中添加以下代码
    *WordPress添加额外选项字段到常规设置页面
    * http://www.wpdaxue.com/add-field-to-general-settings-page.html
    */
    $new_general_setting = new new_general_setting();
    class new_general_setting {
    function new_general_setting(){
    add_filter('admin_init', array(&$this ,'register_logo'));
    }
    function register_logo(){
    //需要'js/uploader.js组件
    wp_enqueue_script('fli-upload-js', $this->url .'js/uploader.js', array('jquery','media-upload','thickbox'));
    wp_enqueue_style('thickbox');
    wp_enqueue_style('fli-upload-css', $this->url .'css/uploader.css');
    register_setting('general','logo','esc_attr');
    add_settings_field('logo','<label for="logo">'.__('网站Logo').'</label>', array(&$this,'logo_fields_html'),'general');
    }
    function logo_fields_html(){
    $value = get_option('logo','');
    echo '<input type="text" class="regular-text ltr" id="logo" name="logo" maxlength="200" value="'. $value .'" readonly/> <input type="button" id="general_logo" class="button insert-media add_media" value="上传">';
    }
    }
    //自定义后台Css和Js
    add_action('admin_enqueue_scripts','myAdminScripts');
    function myAdminScripts(){
    //主题下加载admin.js
    wp_register_script('default', get_template_directory_uri().'/admin.js', array(),'','all');
    wp_enqueue_script('default');
    wp_register_style('default', get_template_directory_uri().'/admin.css', array(),'','all');
    wp_enqueue_style('default');
    }
    ?>
    

    复制代码

2.在主题admin.js中添加代码

复制代码

options_general();
//在常规选项页面添加自定义信息
function options_general (){
if(!Islocatl_pathname('options-general.php'))return;
//点击上传按钮或input元素时打开上传窗口
jQuery('#general_logo,#logo').click(function(){
//打开上传窗口需要js/uploader.js组件
tb_show('','media-upload.php?type=image&TB_iframe=true');
returnfalse;
});
//图片上传页面回传
//html:为选择的图片元素
window.send_to_editor =function(html){
imgurl = jQuery(html).attr('src');
// 保存值并写入optuions表
jQuery('#logo').val(imgurl);
//删除图片上传窗口
tb_remove();
returnfalse;
}//end send_to_editor
}
//当前页面是否是指定的页面
functionIslocatl_pathname(pathname){
return location.pathname.indexOf(pathname)>=0;
}//end 当前页面是否是指定的页面

复制代码

 

效果图:

 

参考:

进阶教程(三十四):调用新版的媒体中心上传图片

定制和使用WordPress图片上传功能

WordPress 添加额外选项字段到常规设置页面

 

来自为知笔记(Wiz)

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/399465.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Thunder团队第三周 - Scrum会议6

Scrum会议6 小组名称&#xff1a;Thunder 项目名称&#xff1a;i阅app Scrum Master&#xff1a;宋雨 工作照片&#xff1a; 代秋彤照相&#xff0c;所以图片中没有该同学。 参会成员&#xff1a; 王航&#xff1a;http://www.cnblogs.com/wangh013/ 李传康&#xff1a;http://…

如何使WordPress博客添加多个sidebar侧边栏

https://www.cnblogs.com/lydbk/p/4609736.html 如何使WordPress博客添加多个sidebar侧边栏 在制作wordpress模版的时候,也许你会遇到一个sidebar侧栏不能完全满足你的需求&#xff0c;或者侧栏内容过多导致页面过长&#xff0c;那么我们可以考虑使用两个或者更多侧栏。 考虑…

glove中文词向量_Summary系列glove模型解读

一、Glove模型简介语义文本向量表示可以应用在信息抽取&#xff0c;文档分类&#xff0c;问答系统&#xff0c;NER&#xff08;Named Entity Recognition&#xff09;和语义解析等领域中&#xff0c;大都需要计算单词或者文本之间的距离或者相似度&#xff0c;因此&#xff0c;…

lynx---CentOS终端访问IP

1、官网 http://lynx.isc.org 2、稳定版本 http://invisible-mirror.net/archives/lynx/tarballs/lynx2.8.8rel.2.tar.gz 3、下载 cd /usr/local/ wget http://invisible-mirror.net/archives/lynx/tarballs/lynx2.8.8rel.2.tar.gz 4、解压 tar xzf lynx2.8.8rel.2.tar.gz 5…

OnLongClickListener长按事件设置墙纸

在AndroidApp应用中&#xff0c;OnLongClick事件表示长按2秒以上触发的事件&#xff0c;本章我们通过长按图像设置为墙纸来理解其具体用法。知识点&#xff1a;OnLongClickListener  OnLongClickListener接口与之前介绍的OnClickListener接口原理基本相同&#xff0c;只是该接…

foursquare nyc数据集_炫酷的python地理数据可视化

介绍在本文中&#xff0c;我依靠纽约市提供的这一数据集&#xff0c;详细列出了从2010年1月到2017年9月的所有大鼠目击事件。在此期间&#xff0c;已有101,914例报告的老鼠目击事件。虽然这已经是一个非常高的数字&#xff0c;但实际观察的鼠标数量可能要高得多。在纽约市独自一…

crawler_微信采集方案

仅供参考 转载于:https://www.cnblogs.com/cphmvp/p/3729295.html

jsp文件通常用common_springboot还能这样用redis

点击蓝字 关注我们 作者&#xff1a;xfkhttps://www.cnblogs.com/xfk1999/p/11347793.html一直想在springboot上集成带缓存的redis&#xff0c;终于成功了。网上有1000种写法&#xff0c;想找到一篇合适的还真不容易?。走下流程&#xff0c;加深下印象。环境:springboot版本&a…

takePic and Videos

2019独角兽企业重金招聘Python工程师标准>>> //// ViewController.m// UIImagePickerController// Created by Kenshin Cui on 14/04/05.// Copyright (c) 2014年 cmjstudio. All rights reserved.//AVFoundation.framework//MediaPlayer.framework//MobileCore…

uap--studio设置文本字体

转载于:https://www.cnblogs.com/zzzzw/p/4920460.html

可变悬挂调节软硬_【5040地推合作品牌】荷兰高性能减震器及悬挂系统品牌—KONI...

GT Show“5040计划”&#xff0c;深入全国各地省市地区&#xff0c;全方位覆盖全国改装门店、一二类维修厂、五大车型(奥迪、宝马、奔驰、保时捷、雷克萨斯)原厂升级店、高端综合店&#xff0c;深挖长三角六大城市后市场门店。GT Show不仅关注传统改装门店&#xff0c;而且全方…

【Alpha 冲刺】 2/12

今日任务总结 人员今日原定任务完成情况遇到问题贡献值胡武成完成API文档编写由于外出比赛&#xff0c;故推迟无0孙浩楷1.完成VUE框架搭建 2.寻找在线编辑图片插件已完成WEB在线编辑图片插件加载速度慢&#xff0c;需要再想办法解决2 0.5胡冰完成MVP框架搭建已完成由于之前有做…

钻井缸套排量_中国石化顺北特深层及川渝页岩气钻完井关键技术集成:碳酸盐岩酸压技术、优快钻井技术、页岩气强化体积改造技术、高温高压窄间隙固井技术...

点击蓝字关注“油媒方”近年来&#xff0c;中国石化围绕顺北、川渝等重点探区&#xff0c;通过技术攻关与现场实践&#xff0c;初步形成了顺北8000&#xff5e;9000m特深层钻井完井关键技术、川渝页岩气钻井完井关键技术&#xff0c;支撑了中国石化在特深层油气、非常规油气资源…

爬虫如何监听插件_Go 爬虫之 colly 从入门到不放弃指南

Go语言中文网&#xff0c;致力于每日分享编码、开源等知识&#xff0c;欢迎关注我&#xff0c;会有意想不到的收获&#xff01;最近发现知乎上感兴趣的问题越来越少&#xff0c;于是准备聚合下其他平台技术问答&#xff0c;比如 segmentfault、stackoverflow 等。要完成这个工作…

多款优秀的 JS MVC 框架对比

2019独角兽企业重金招聘Python工程师标准>>> 正如之前说的&#xff0c;产品生产有功能时代转入体验时代&#xff0c;产品为王&#xff0c;体验为王&#xff0c;已经是时代趋势。体验经济的到来&#xff0c;说明前端的技术要求越来越高&#xff0c;完成功能是不行的&…

在WordPress文章中插入表格的四种方法,史上最全

https://boke112.com/4553.html/all td, tr {border: 1px solid #000000;text-align: center;padding: 10px;} 在做 WordPress 网站的时候&#xff0c;很多时候文章中都会用到 table 表格&#xff0c;今天就来总结分享四种在WordPress 文章中插入 table 表格的方法。 一、最简…

(转)在Eclipse中用TODO标签管理任务(Task)

背景&#xff1a;eclipse是一款功能十分强大的编辑&#xff0c;如果能够熟练运用&#xff0c;必定事半功倍&#xff0c;但如果不求甚解&#xff0c;无疑是给自己制造麻烦。 1 标签的使用 1.1 起因 如上图所示&#xff0c;在程序中有很多todo的标签出现&#xff0c;但是却不知道…

制作启动U盘与定制多系统启动

制作启动U盘与定制多系统启动 说明&#xff1a;本文将讲述有关bootmgr引导启动与grub引导启动制作的相关经验&#xff0c;文中提到的知识谈不上完全正确&#xff0c;只是一些个人在制作U盘启动获得的心得&#xff0c;但我会尽力正确的解释清楚。 制作启动U盘 所需工具&#xf…

wordpress footer置底

/* 通过calc()函数让内容区块自动伸缩 */ .my-body{min-height: calc(71.7vh - 80px); } footer{height:50px; } 参考&#xff1a;https://www.jianshu.com/p/6efe2c76a2dd 当我们要设置网页中的footer置底&#xff08;sticky footer&#xff09;&#xff0c;我们可以这样办 …

电脑公司 GHOST WIN10 X64 装机专业版 V2018.04(64位)

http://www.xitongzhijia.net/win10/201804/123923.html 系统简介 电脑公司 GHOST WIN10 X64 装机专业版 V2018.04 系统维护和美化工具&#xff0c;常用软件一站到位&#xff0c;自带安全软件&#xff0c;自动屏蔽木马病毒阻止病毒运行&#xff0c;阻挡填出IE插件&#xff0c;G…