WordPress.org

Support

Support » Plugins and Hacks » Theme My Login » [Plugin: Theme My Login] Require Other information when Registering

[Plugin: Theme My Login] Require Other information when Registering

Viewing 12 replies - 1 through 12 (of 12 total)
  • Yes ! the data fileds to collect some more Information from users while signup is very much helpful .

    Plugin Author Jeff Farthing

    @jfarthing84

    The “Extra Fields” module is a future idea, as I am trying to inherit all the features left over from Register Plus.

    That would be awesome and please make sure to add some kind of Captcha to it I suggest adding reCAPTCHA.

    It really would be great if you could create the option to add extra fields to the registration screen! My client wants to approve new users first, but needs more data than the name and email address…

    As I am on a deadline, it would be most helpful if someone could advise me on how I can create a (temporary) workaround to add two more fields to the registration form! Of course it would be even better if Jeff could add this functionality really soon 😉

    Plugin Author Jeff Farthing

    @jfarthing84

    This should point you in the right direction. Create a file called “theme-my-login-custom.php” in your plugins directory. Then adapt this to your needs:

    <?php
    // This function will output the fields to the register form
    function tml_register_form( &$template ) {
    	echo '<p><input type="text" name="my-field" id="my-field' . $template->the_instance . '" value="' . $template->the_posted_value( 'my-field' ) . '" size="20" />' . "\n";
    }
    add_action( 'tml_register_form', 'tml_register_form' );
    
    // This function can be used for validation such as required fields
    function tml_registration_errors( $errors, $user_login ) {
    	// Require "my-field"
    	if ( empty( $_POST['my-field'] ) )
    		$errors->add( 'empty_my-field', __( '"My field" is a required field!' ) );
    }
    add_action( 'registration_errors', 'tml_registration_errors', 10, 2 );
    
    // Finally, this function will save the posted field to the user meta table
    function tml_new_user_registered( $user_id ) {
    	if ( isset( $_POST['my-field'] ) )
    		update_user_meta( $user_id, 'my-field', $_POST['my-field'] );
    }
    add_action( 'tml_new_user_registered', 'tml_new_user_registered' );
    ?>

    If you still can’t get it with that, I am available for hire.

    Thanks for your help Jeff! Because my code was getting a bit complex (I wanted to show the drop-down on the profile page as well), I decided to use the Cimy User Extra Fields plugin which made things a lot easier 🙂

    Jeff Farthing – You really are doing a great job managing this plugin. I do a lot of plugin testing when looking for just the right functionality, and very few WP developers stay on top of updates the way you do.

    Right now, your plugin uses has a widget interface. On that widget interface you provide a profile link, which opens on the main page instead of in the side bar as your registration widget currently does.

    I would recommend, for shear usability and ease of customization, you move the registration to a page and out of the sidebar.

    Also, when you have finally added the ability to “Require Other information when Registering” I would make it mimic that already available in the existing WP User’s area.

    Clicking register on a web site, should basically be the same as clicking “add new user” once you are in the dashboard. Only… let us decide which fields to make visible, optional and mandatory.

    In my mind, this specific functionality would be what the developers of the WP-Members WP Plugin tried to achieve, but didn’t do it quite right.

    Keep up the good work man. It is awesome!

    Plugin Author Jeff Farthing

    @jfarthing84

    You have the option to “force” the register link to the page, you know.

    @bamajr: You can currently have the login and registration boxes in the main content area as you can see here.

    I have used a plugin called ‘Widget Logic’ to be able to control when to show the sidebar widget (on the homepage for example) and to be able to hide it on the pages where the login box is in the main area.

    Just add the [theme-my-login] on the page where you want it.

    I know how to put the login and registration boxes in the main content areas.

    I want to leave the login and password recovery in the sidebar as you can see at http://www.bamajr.com/ but if you click on the “register” in the sidebar, I’d like that to open in the main page area. Much the same way as when you are actually logged in you can click on the “profile” link in the sidebar and have the user’s profile open in the main page area.

    Maybe I’m not being clear, or I just don’t understand how you can force the register link to open in the main page area without also having the login/logout in that same area.

    Plugin Author Jeff Farthing

    @jfarthing84

    If your using the widget, it’s simply an option in the widget settings. Uncheck “Allow Registration”.

    For the template tag:

    <?php theme_my_login( 'register_widget=0' ); ?>

    you should keep shortcut of login page on sidebar which is very easy to access. there are certain confidential information asks like url of your identity.

Viewing 12 replies - 1 through 12 (of 12 total)
  • The topic ‘[Plugin: Theme My Login] Require Other information when Registering’ is closed to new replies.
Skip to toolbar