如何自定义WordPress的登录页面(Logo/链接/文本)

出于个性化要求,你可能需要自定义WordPress的登录页面的显示效果。貌似有不少这方面的WordPress插件,但是我们完全没有必要安装插件,只需要简单的添加一些代码即可。

方法概要

通过WordPress内置的挂钩(Hook),在主题的 functions.php 添加一些简单的代码,即可完成自定义修改,所有的操作都不需要修改WordPress核心文件,即使升级WordPress版本,也不会丢失效果。 注:下文提到的所有代码,都是添加到主题的 funshions.php 文件的最后一个 ?> 的前面。

自定义Logo图片

制作一个名为 login_logo.png 的图片,放在主题下的images文件夹里(也可以根据自己的实际修改,只要下面的代码引用的Logo地址正确即可)。
1
2
3
4
5
6
7
8
9
10
11
12
13
//自定义登录页面的LOGO图片
function my_custom_login_logo() {
    echo '<style type="text/css">
        .login h1 a {
            background-image:url("这里添加logo图片网址") !important;
        height: 60px; //修改为图片的高度
        width: 250px; //修改为图标的宽度
        -webkit-background-size: 250px; //修改为图标的宽度
        background-size: 250px; //修改为图标的宽度
        }
    </style>';
}
add_action('login_head', 'my_custom_login_logo');

自定义Logo链接

将Logo的链接改为网站首页链接:
1
2
//自定义登录页面的LOGO链接为首页链接
add_filter('login_headerurl', create_function(false,"return get_bloginfo('url');"));
将Logo的链接改为任意链接:
1
2
3
4
5
//自定义登录界面LOGO链接为任意链接
function custom_loginlogo_url($url) {
	return 'https://www.wpdaxue.com'; //修改URL地址
}
add_filter( 'login_headerurl', 'custom_loginlogo_url' );

自定义Logo提示信息(tltle)

自定义为网站名称:
1
2
//自定义登录页面的LOGO提示为网站名称
add_filter('login_headertitle', create_function(false,"return get_bloginfo('name');"));
自定义为其他任何文本:
1
2
3
4
5
//自定义登录页面LOGO提示为任意文本
function custom_loginlogo_desc($url) {
    return 'WordPress大学'; //修改文本信息
}
add_filter( 'login_headertitle', 'custom_loginlogo_desc' );

自定义登录框内容

1
2
3
4
5
//在登录框添加额外的信息
function custom_login_message() {
    echo '<p>欢迎来到'.get_bloginfo('name').',请登录后下载本站资源</p><br />';
}
add_action('login_form', 'custom_login_message');

自定义底部内容

1
2
3
4
5
//自定义底部信息
function custom_html() {
    echo '<p style="text-align:center">© ' . get_bloginfo(url).'</p>';
}
add_action('login_footer', 'custom_html');

自定义CSS

要更加灵活地修改登录页面的显示样式,建议添加一个自定义的CSS文件,然后查看登录页面的源代码的html结构,撰写自己的CSS样式。你可以使用下面的代码引入自己的CSS,注意修改代码中的css地址,以下调用的是主题根目录下的login_style.css:
1
2
3
4
5
//添加自定义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。

标签: , , ,

引用自你的网站。

发表评论