您现在的位置是:首页 > cms教程 > WordPress教程WordPress教程

WordPress后台上传自定义网站Logo的实现方法

香寒2025-03-25WordPress教程已有人查阅

导读众所周知一般网站的logo都是固定的所以我在做网站时也是使用的静态logo文件,但最近用wp给一个客户做的网站时,因为网站现在的logo可能会需要重新设计

众所周知一般网站的logo都是固定的所以我在做网站时也是使用的静态logo文件,但最近用wp给一个客户做的网站时,因为网站现在的logo可能会需要重新设计,所以客户提出了需要在后台可以自己修改网站logo,接收需求后就在网络上找如何解决,但找了一圈都没有找到想要的效果(都是如何修改wp的登录logo),还好找到两篇相关的文章,之后根据这两篇文章自己Codeing最终实现了功能代码:
1.在主题function中添加以下代码
<?php
/**在function中添加以下代码
*WordPress添加额外选项字段到常规设置页面
* http:// .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 当前页面是否是指定的页面

本文标签:

很赞哦! ()

相关源码

  • (自适应)蓝色基建施工工程建筑集团网站pbootcms模板下载为工程建筑、基建施工类企业打造的PbootCMS模板,采用现代化设计理念,突出企业实力与项目展示,帮助建筑类企业快速建立专业在线门户。查看源码
  • 帝国cms7.2淘宝客导购自媒体博客网站模板源码本模板基于帝国CMS7.2内核深度开发,为淘宝客、商品导购类自媒体及博客网站设计。通过可视化后台管理,可快速搭建具备商品推荐、比价功能的内容平台,帮助用户实现流量高效转化。查看源码
  • (PC+WAP)盆栽绿植观赏植物花卉租赁免费pbootcms网站模板为花卉盆栽租赁、园林绿化企业打造的PbootCMS网站模板,采用较新内核开发,PC与移动端数据实时同步。通过清新自然的视觉设计,精准展现植物养护、花卉展示等业务场景,帮助用户快速建立专业级行业网站。查看源码
  • (自适应)居家生活日用品纸盘纸盒纸杯卫生纸巾生产厂家pbootcms模板为纸品生产企业打造的现代化展示平台,自动适应各种设备屏幕,确保浏览体验一致,完善的SEO功能,提升网站曝光度,基于PbootCMS构建,源码开放可定制。查看源码
  • (PC+WAP)房屋建造建筑工程房地产建材行pbootcms网站模板下载本模板基于PbootCMS内核开发,为房屋建造、建筑工程及房地产建材类企业设计。通过本模板可快速搭建具有行业特色的企业官网,只需替换文字与图片内容即可适配其他行业使用。查看源码
  • (自适应)帝国cms7.5模板新闻资讯门户带会员中心基于帝国CMS7.5内核开发的HTML5响应式模板,为新闻机构、媒体门户及资讯聚合平台设计。通过模块化布局实现图文混排查看源码
分享笔记 (共有 篇笔记)
验证码: