Wordpress如何在现有的输入框中插入值



我需要在现有输入中自动插入登录用户的usernameemail

我尝试了以下代码,但它没有在输入中插入值。我测试了echo$username和$user_email,它显示了正确的用户信息(。

你能告诉我怎么解决这个问题吗

现有输入代码(由YITH插件创建(:

<from id="yith-ywraq-default-form">
<input type="text" class="input-text " name="first_name" id="first_name" placeholder="" value="">
<input type="email" class="input-text " name="email" id="email" placeholder="" value="">
</form>


我尝试过的代码:

$autofillNameEmail = <<<EOD
<script>
(function thisFunction() { 
$("input[name=first_name]").val(Print($username););
$("input[name=email]").val(Print($user_email););
})();
</script>
EOD;
$user = wp_get_current_user();
$username = $user->user_login;
$user_email = $user->user_email;
if( $user->ID ) {
echo $autofillNameEmail;
}

谢谢。

我最初的想法是代码的javascript部分。虽然以您所做的方式将php变量传递到页面不是一种好的做法,但代码中的要点是,每当您想在wordpress中使用jQuery时,您需要明确地告诉wordpress您需要jQuery中的$。所以我想说,运行下面的代码段。

php变量传递到页面不是一种好的做法,也不是将javascript注入页面的正确方法。不建议在生产中使用!相反,把它看作是一个学习机会,去学习wp_localize_scriptwp_enqueue_script

global $current_user;
$user_name = $current_user->user_login;
$user_email = $current_user->user_email;
if ($current_user->ID) { ?>
<script>
jQuery(document).ready($ => {
let userName = "<?php echo $user_name ?>";
let userEmail = "<?php echo $user_email ?>";
$("input[name=first_name]").val(userName);
$("input[name=email]").val(userEmail);
});
</script>
<?php }

测试成功!

相关内容

  • 没有找到相关文章

最新更新