web-dev-qa-db-ja.com

テーママイログインプラグイン、フィールドの更新方法

クライアントプロジェクトに テーママイログイン プラグインを使用していますが、ユーザーが登録されるとプロファイルフィールドを更新できません。

私はここの指示 に従った が、それらは何の効果もないようだった。誰かがそれに光を当てることができればそれは素晴らしいことです。

これが私の現在のコードです。

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' );
1
Poisontonomes

user_register フックは、ユーザーが最初に登録したときにのみ起動されます。カスタムプロファイルデータをユーザーの編集画面に表示させるには、 edit_user_profile フック(そしておそらく を使用します。 show_user_profile 、ユーザーが自分のカスタムプロファイル情報を編集できるようにする場合)。

1
Pat J