有很多方法可以诱使WP预先填充用户名字段,但我很肯定这会涉及到使用POST,并且诱使它认为以前的提交中存在错误。
我的建议是只使用Javascript(或jQuery,如下所述)。它仍然是“黑客”,但至少它可以用很少的开销完成任务,而且非常容易使用。它添加了一个检查预填充URL参数的小脚本,如果发现任何内容,就会触发自动完成。
// Add jQuery if prepopulate GET is found
add_action(\'login_head\', \'prepopulate_username_js\');
function prepopulate_username_js() {
if(isset($_GET[\'prepopulate\'])) :
?>
<script type="text/javascript">
jQuery(function($){
$(\'#user_login\').val(\'<?php echo($_GET[\'prepopulate\']); ?>\');
});
</script>
<?php
endif;
}
然后,在徽标上创建链接时,只需在主题模板中使用以下内容即可触发上述脚本:
<a href="<?php echo(add_query_arg(array(\'prepopulate\' => \'bob\'), wp_login_url())); ?>">This will link to a prepopulated login form!</a> // change \'bob\' for whatever is relevant