WordPress中设置自定义登录表格可以通过创建一个自定义登录表格的模板,然后在主题的functions.php中添加代码实现。
以下是实现自定义登录表格的步骤:
<form name="loginform" id="loginform" action="<?php echo esc_url( site_url( 'wp-login.php', 'login_post' ) ); ?>" method="post">
<p>
<label for="user_login"><?php _e( 'Username or Email Address', 'textdomain' ); ?></label>
<input type="text" name="log" id="user_login" class="input" value="<?php echo esc_attr( $user_login ); ?>" size="20" />
</p>
<p>
<label for="user_pass"><?php _e( 'Password', 'textdomain' ); ?></label>
<input type="password" name="pwd" id="user_pass" class="input" value="" size="20" />
</p>
<p>
<?php wp_nonce_field( 'wp-login' ); ?>
<input type="submit" name="wp-submit" id="wp-submit" value="<?php _e( 'Log In', 'textdomain' ); ?>" />
<input type="hidden" name="redirect_to" value="<?php echo esc_attr( $redirect_to ); ?>" />
</p>
</form>
在上述代码中,我们使用了WordPress的转义函数esc_url()和esc_attr()来转义输出,保证了安全性。
function custom_login_page_template( $template ) {
if ( is_page( 'login' ) ) { // 检查页面是否为登录页面
$new_template = locate_template( array( 'templates/login.php' ) );
if ( ! empty( $new_template ) ) {
return $new_template;
}
}
return $template;
}
add_filter( 'page_template', 'custom_login_page_template' );
在上述代码中,我们使用WordPress的add_filter()函数将新的模板文件作为登录页面的模板。
现在,访问您的WordPress网站上的登录页面,请检查您是否能够看到您所创建的自定义登录表格。
注意:除非您确信自己知道操作的风险,否则请勿修改如此关键的功能,如WordPress的登录表格。最好的方法是使用现有的插件或主题,这些插件和主题已经为您提供了所需的自定义功能,而不需要您进行编程或修改现有的功能。