出于个性化要求,你可能需要自定义WordPress的登录页面的显示效果。貌似有不少这方面的WordPress插件,但是我们完全没有必要安装插件,只需要简单的添加一些代码即可。
概述
通过WordPress内置的挂钩(Hook),在主题的 functions.php 添加一些简单的代码,即可完成自定义修改,所有的操作都不需要修改WordPress核心文件,即使升级WordPress版本,也不会丢失效果。
注:下文提到的所有代码,都是添加到主题的 funshions.php 文件的最后一个 ?> 的前面。</p
1.自定义Logo图片
制作一个名为 login_logo.png 的图片,放在主题下的images文件夹里(也可以根据自己的实际修改,只要下面的代码引用的Logo地址正确即可)。
//自定义登录页面的LOGO图片 function my_custom_login_logo() { echo '<style type="text/css"> h1 a { background-image:url('.get_bloginfo('template_directory').'/images/logo.png) !important; } </style>'; } add_action('login_head', 'my_custom_login_logo');
2.自定义Logo链接
将Logo的链接改为网站首页链接:
//自定义登录页面的LOGO链接为首页链接 add_filter('login_headerurl', create_function(false,"return get_bloginfo('url');"));
将Logo的链接改为任意链接:
//自定义登录界面LOGO链接为任意链接 function custom_loginlogo_url($url) { return 'http://www.wpdaxue.com';//修改URL地址 } add_filter( 'login_headerurl', 'custom_loginlogo_url' );
3.自定义Logo提示信息(tltle)
自定义为网站名称:
//自定义登录页面的LOGO提示为网站名称 add_filter('login_headertitle', create_function(false,"return get_bloginfo('name');"));
自定义为其他任何文本:
//自定义登录页面LOGO提示为任意文本 function custom_loginlogo_desc($url) { return 'WordPress大学'; //修改文本信息 } add_filter( 'login_headertitle', 'custom_loginlogo_desc' );
4.自定义登录框内容
//在登录框添加额外的信息 function custom_login_message() { echo '<p>欢迎来到'.get_bloginfo('name').',请登录后下载本站资源</p><br />'; } add_action('login_form', 'custom_login_message');
5.自定义底部内容
//自定义底部信息 function custom_html() { echo '<p style="text-align:center">© ' . get_bloginfo(url).'</p>'; } add_action('login_footer', 'custom_html');
6.自定义CSS
要更加灵活地修改登录页面的显示样式,建议添加一个自定义的CSS文件,然后查看登录页面的源代码的html结构,撰写自己的CSS样式。你可以使用下面的代码引入自己的CSS,注意修改代码中的css地址,以下调用的是主题根目录下的login_style.css:
//添加自定义CSS function custom_login() { echo '<link rel="stylesheet" type="text/css" href="' . get_bloginfo('template_directory') . '/login_style.css" />'; } add_action('login_head', 'custom_login');
本文小结
通过WordPress的挂钩(hook),可以做很多自定义修改,不仅仅是登录页面哦。对于WordPress主题或插件开发者来说,掌握WordPress的各种挂钩,你就可以很自由地自定义WordPress啦!