クライアントプロジェクトに テーママイログイン プラグインを使用していますが、ユーザーが登録されるとプロファイルフィールドを更新できません。
私はここの指示 に従った が、それらは何の効果もないようだった。誰かがそれに光を当てることができればそれは素晴らしいことです。
これが私の現在のコードです。
register-form.php
<p>
<input
type="text"
name="phone_number"
id="phone_number<?php $template->the_instance(); ?>"
class="input"
value="<?php $template->the_posted_value( 'phone_number' ); ?>"
size="20"
tabindex="20"
placeholder="Phone Number"
/>
</p>
profile-form.php
<p>
<input
type="text"
name="phone_number"
id="phone_number"
value="<?php echo esc_attr( $profileuser->phone_number ); ?>"
class="regular-text"
placeholder="Phone Number"
/>
</p>
theme-my-login-custom.php
function tml_user_register( $user_id ) {
// Phone Number
if ( !empty( $_POST['phone_number'] ) )
update_user_meta( $user_id, 'phone_number', $_POST['phone_number'] );
}
add_action( 'user_register', 'tml_user_register' );
user_register
フックは、ユーザーが最初に登録したときにのみ起動されます。カスタムプロファイルデータをユーザーの編集画面に表示させるには、 edit_user_profile
フック(そしておそらく を使用します。 show_user_profile
、ユーザーが自分のカスタムプロファイル情報を編集できるようにする場合)。