WordPress的登录界面在我第一次看到的时候就忍不住在心里一通吐槽
“这丫也太难看了吧”
“得改得改”
“这个wordpress的logo点击之后居然是跳转到wordpress官网,也忒不要脸了吧”
“路过路过”
记得在还没安装“WordPress”的时候有看到“WordPress使用Bing美图作为登录页面背景”,当时有留意一下,现在该付诸行动美化一下了。
百度了一篇修改的文章1、WordPress 使用必应(Bing)背景美图作为登录页面背景
不过博主使用的是1366*768分辨率的API接口,我想要1920*1080分辨率的图片啊
为了高清,我另外度娘了一下php获取必应每日一图的方法,找到两篇相对有用的文章:
2、5种方法获取Bing每日图片 附送高清API接口及网站背景调用
3、必应每日一图接口 – CSDN博客
缙哥哥博客没有提供php源码,提供了一个接口,对于一个有强迫症并且闲的发霉的人来说,直接调用是多么的不专业多么的无能,万一链接失效,我的设置且不是也没用了吗?所以我找到了第三篇文章,然而第三篇文章也没有提供源码,那就在第一篇文章源码的基础上修改吧
//调用bing美图作为登录页背景图 function custom_login_head(){ $str=file_get_contents('http://cn.bing.com/HPImageArchive.aspx?idx=0&n=1'); if(preg_match("/<url>(.+?)<\/url>/ies",$str,$matches)){ $imgurl='http://cn.bing.com'.$matches[0]; echo'<style type="text/css">body{background: url('.$imgurl.');width:100%;height:100%;background-image:url('.$imgurl.');-moz-background-size: 100% 100%;-o-background-size: 100% 100%;-webkit-background-size: 100% 100%;background-size: 100% 100%;-moz-border-image: url('.$imgurl.') 0;background-repeat:no-repeat\9;background-image:none\9;}</style>'; }} add_action('login_head', 'custom_login_head');
需要修改的因该是
$str=file_get_contents('http://cn.bing.com/HPImageArchive.aspx?idx=0&n=1'); //这里应该是必应每日美图接口 if(preg_match("/<url>(.+?)<\/url>/ies",$str,$matches)){ //这里应该是正则表达式获取文件名 $imgurl='http://cn.bing.com'.$matches[0]; //这里应该是合成图片URL
分析清楚了,剩下的就是更改这三个地方了,根据第三篇文章我们能够获取到必应每日高清美图接口
http://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1
接着是正则表达式,这个东西没接触过啊,只能自己去试一试了
利用站长之家提供的工具:正则测试
最后我用的正则是“/\/(.+?).jpg/”
修改拼接地址http://s.cn.bing.net
所以修改之后的代码应该是这样:
/**自定义登录界面背景*/ //调用bing美图作为登录页背景图 function custom_login_head(){ $str=file_get_contents('http://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1'); if (preg_match("/\/(.+?).jpg/", $str, $matches)) { $imgurl='http://s.cn.bing.net'.$matches[0]; } echo'<style type="text/css">body{background: url('.$imgurl.');background-repeat: repeat;background-position:center;background-image:url('.$imgurl.');background-repeat: repeat;background-position:center;-moz-border-image: url('.$imgurl.');background-repeat: repeat;background-position:center;}</style>'; //这里我对background图片的样式进行了调整 //方便小分辨率屏幕(如手机)显示图片正常,否则会被压缩 } add_action('login_head', 'custom_login_head');
将以上代码加入至主题目录 Functions.php 文件最后面?>标签前(如果没有?>标签,则直接加到最后面)保存,WordPress登录界面背景就会每日更新为必应美图啦。
By the way,顺便提供一个获取高清原图的php源码
<?php $str=file_get_contents('http://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1'); if (preg_match("/\/(.+?).jpg/", $str, $matches)) { $imgurl='http://s.cn.bing.net'.$matches[0]; } if ($imgurl) { header('Content-Type: image/JPEG'); @ob_end_clean(); @readfile($imgurl); @flush(); @ob_flush(); exit(); } else { exit('error'); } ?>
把以上代码另存为bingpic.php放在服务器网站相应目录,通过访问就能直接调用必应高清图啦!
比如这个示例
至此就全部完成了!!!
——2018年2月26日上午10:58
长期没登陆都没发现必应美图API已经改了,原来的方法已经获取不到高清墙纸了,检查了一下,发现原来的XML还是可用的,应该只是必应的图片库链接改了,试了一下必应的官方官网+图片名,能够正常访问,更新如下:
$imgurl='http://cn.bing.com'.$matches[0];
——2018年4月1日上午21:28