If I'm a registered user, don't ask me for personal information

Hi,

Really, what I need is:
- If the user is not logged in: ask him to register first (using the default Wordpress form or a page with a customized user registering form done using Gravity Forms).
- If the user is logged in: don't ask for any more information, it's user profile should have got anything I need.

Is this possible to get done? I looked in all configuration options and tested different "creative" solutions with no luck :slight_frown:.

Thank you in advance.

Regards,
--
David

  • Hakan
    • The Incredible Smush

    Brian has a good point here.

    If you auto save the required fields beforehand in some way (e.g. ask them in Gravity forms during registration and save in user's meta), then plugin will automatically retrieve them. It is already doing so for itself, when a logged in user fills them during confirmation.

    For a logged in user, these data are saved in user_meta's and named as app_email, app_name, app_address, etc.

    You can see those fields under user's profile page. User can also edit them.

    Cheers,
    hakan

  • eqhes
    • Flash Drive

    The "problem" was when registering for an appointment. You got the key @hakan. I didn't parsed correctly the Gravity forms meta data with the Appointments+ meta data -d'oh!-. This was because Gravity forms didn't show me the Appointments+ meta data fields until I saved manually the users data once (not sure why) and I didn't know that they should be there (short imagination as well :stuck_out_tongue:). Once I got meta data parsed correctly, information get shown where it should for logged in users as you said.

    The second part of the problem was a misconfiguration of the Appointments+ plugin. In the options panel we can check if login is required or not and what kind of data information we want to ask for users. As I ask for all the required data on the registration process, I don't need to allow guest users to register appointments. So I have forced the appointments registration form to be available only for logged in users and unchecked all the fields (address, phone, etc.) from being asked from the client. This way I'm not collecting data twice and my "problem" gets solved.

    Kind regards,
    --
    David

  • Hakan
    • The Incredible Smush

    Hi wmacmill,

    Appointments+ side is quite easy:

    global $current_user;
    update_user_meta( $current_user->ID, 'app_address', $address_value_from_gf );
    update_user_meta( $current_user->ID, 'app_city', $city_value_from_gf );
    // And other fields
    ...

    http://codex.wordpress.org/Function_Reference/update_user_meta

    To actually get those $address_value_from_gf, $city_value_from_gf, etc values you should use GF filters and ask their codes from them.

    Note: email and name (username) values are pre populated in the confirmation form as of V1.2.4.1. Client can change them either by modifying the form or using his profile page

    Cheers,
    Hakan

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.