我正在为客户构建一个 wordpress 网站,但我的客户希望登录屏幕具有不同的外观,所以我的问题是如何更改默认 wordpress 登录表单的外观。我不想更改任何核心文件,有没有办法在不更改核心文件的情况下更改登录表单的外观。任何形式的帮助将不胜感激,谢谢!
4 回答
您可以在不更改核心文件的情况下使用 hook login_head
,只需将这些代码添加到您的functions.php
文件中即可完成
function custom_login_logo() {
echo '<style type="text/css">
h1 a { background-image:url('.get_bloginfo('template_directory').'/yourImageFolder/login_logo.png) !important; }
</style>';
}
add_action('login_head', 'custom_login_logo');
更新:还要将徽标的链接更改为当前站点,请使用以下代码段
function custom_login_url() {
return get_bloginfo( 'siteurl' );
}
add_filter( 'login_headerurl', 'custom_login_url' );
您可以通过覆盖 css 来做到这一点。您可以通过将以下内容添加到您的 functions.php 来覆盖 css
/**
* Login theme branding.
*/
function rt_login_css()
{
echo '<link type="text/css" rel="stylesheet" href="' . get_bloginfo('template_directory') . '/css/login.css" />';
}
add_action('login_head', 'rt_login_css');
徽标使用 css 图片背景,因此可以被 css 覆盖。
基本上,login_head, 钩子是用于登录页面的,我所做的只是将链接回显到我的登录 css 文件。
从那里,我使用 firebug 来检查正在使用的样式。
缺点是你不能在这里完全控制,只是你可以用 css 和可能的 javascript 做任何事情。
这里也是我的css文件的一个例子:
h1 a {
background-image: url('/app/images/logo.png') !important;
width:330px;
height: 69px;
margin-bottom:0px;
}
#login {
margin: 5em auto;
}
我所做的只是改变标志,所以很简单。通常,您必须进行调整以正确对齐和间隔徽标,这就是其他 css 的用途。
此外,您可以考虑创建自己的登录页面并使用各种 wordpress 功能处理身份验证。这是更多的工作,但您可以完全控制登录表单的外观。
缺点是它的工作量更大,而且如果用户被重定向到常规的 WP 管理员登录页面。所以对于后者,我想你必须同时做这两件事。
我发现这个插件http://wordpress.org/extend/plugins/wp-custom-login-page/它似乎做你想做的事。
我正在使用插件BM Custom Login来快速轻松地自定义 wordpress 登录框。通过使用此插件,您可以:
- 用您的自定义图像替换 wordpress 徽标。
- 可以为登录页面添加背景颜色/图像。
- 可以编辑文本/链接的阴影/颜色选项。
- 您可以更改管理页脚文本。(登录时显示在管理页面的底部。)
这个插件不会改变任何核心文件