我正在尝试使用REF - {{USERNAME}}填充referral_code字段,这是输入到默认wordpress用户名注册字段的值:
Wordpress默认用户名字段:
<p>
<label for="user_login">Username<br>
<input type="text" name="user_login" id="user_login" class="input" value="" size="20" autocapitalize="off"></label>
</p>
我的自定义函数添加额外字段
<?php
function gw_registration_form() {
$full_name = ( ! empty( $_POST['full_name'] ) ) ? sanitize_text_field( $_POST['full_name'] ) : '';
$company_name = ( ! empty( $_POST['company_name'] ) ) ? sanitize_text_field( $_POST['company_name'] ) : '';
$telephone = ( ! empty( $_POST['telephone'] ) ) ? sanitize_text_field( $_POST['telephone'] ) : '';
$referral_code = ( ! empty( $_POST['referral_code'] ) ) ? sanitize_text_field( $_POST['referral_code'] ) : '';?>
<p>
<label for="full_name"><?php _e( 'Full Name', 'mydomain' ) ?><br />
<input type="text" name="full_name" id="full_name" class="input" value="<?php echo esc_attr( $full_name ); ?>" size="25" /></label>
</p>
<p>
<label for="company_name"><?php _e( 'Company Name', 'mydomain' ) ?><br />
<input type="text" name="company_name" id="company_name" class="input" value="<?php echo esc_attr( $company_name ); ?>" size="25" /></label>
</p>
<p>
<label for="telephone"><?php _e( 'Telephone Number', 'mydomain' ) ?><br />
<input type="text" name="telephone" id="telephone" class="input" value="<?php echo esc_attr( $telephone ); ?>" size="25" /></label>
</p>
<p>
<label for="referral_code"><?php _e( 'Your Referral Code', 'mydomain' ) ?><br />
<input type="text" name="referral_code" id="referral_code" class="input" value="REF-<?php echo esc_attr( $user_login ); ?>" size="25" readonly/></label>
</p>
<?php
};
我刚刚删除了推荐代码,并将其设置为注册/保存的值,但是,我确实相信某人提供了在这个问题中如何实现这一点的答案将对其他用户有益。
有一个WP功能:https://codex.wordpress.org/Function_Reference/wp_get_current_user
像这样使用你可以得到user_login
。来自Docs:
<?php
$current_user = wp_get_current_user();
echo $current_user->user_login; /* here is your user_login */
?>