Welcome to the Question2Answer Q&A. There's also a demo if you just want to try it out.
  • Register
Welcome to the Q&A for Question2Answer.

If you have questions about the platform, click here to ask and please use English.

If you just want to try Q2A, please use the demo, which also grants admin access.

Apr 29: Q2A 1.5.2

Great Way to get more Signups!

+7 votes

I know the basics, how it will work, but i'm to bad in programming to make this happen and after 3 hours of trying i need your help, you will also benefit from this!

This is my Tip:

The reason why new user sign up is simply, because they want more rights like asking questions or giving answers. So if we dont want to loose some users, we have to make it simple and fast. The Facebook Login was a great thing but we can make it even better:

This is how we can do it:

If a new user wants to post something he gets this message "please log in or register to do xy". A much better way would be to redirect him to a site that allready has the login AND the register form side by side. This would 1. save him one click (for the lazy ones) and 2. He will see that you only need to fill out three fields, so simple and fast that nearly everyone can join in 5 seconds and not (like they will expect) 10-20 fields like in most forums and boards. 3. We can place there a field with benefits that he will have after registration.

This are the things i found out to code it:

qa-page-login.php has the login formular
qa-page-register.php has the register formular
function page_error() in qa-theme.php is were the error message is produced
qa-page-ask is one of the places where we have to insert this

I hope you can understand what i mean, maybe you like this idea too =)

asked Aug 11, 2011 in Q2A Core by Super2Sam

5 Answers

+2 votes
I think it's a good idea. Even better, you could pop up the form with Javascript when you click "Login/Register," similar to how Digg does it.
answered Aug 11, 2011 by DisgruntledGoat
0 votes
yes, it is a good idea, many software works in that way. If the user want to make something that needs to be registered he is redirected to a ligin/register page and next login/register he is redirected to the first page where he wanted to make the action. To solve this I think we can play with the referer.
answered Sep 29, 2011 by propongo
0 votes
Indeed good thinking.

Allowing quick registration while asking a question (in the same form, with 2-3 more fields of username, email etc.) can be very helpful and quick for users as well.

These login and registration improvements can really boost the amount of users participating in the community.
answered Sep 29, 2011 by webtom
0 votes
good idea!

Gideon: how we can take this idea into Q2A? Thanks!
answered Sep 30, 2011 by ProThoughts
0 votes
It's pretty easy to do this with a custom theme... for example:

            if(qa_opt('permit_post_q') == QA_PERMIT_USERS && !qa_get_logged_in_userid()) {
                $userlinks=qa_get_login_links($qa_root_url_relative, isset($topath) ? $topath : qa_path($qa_request, $_GET, ''));                
                $this->content['navigation']['main']['ask']['url'] = 'javascript:if (confirm(\'Asking questions requires you to login or register.  Would you like to register now?\')) document.location.href=\''.qa_html(@$userlinks['register']).'\';';
            }

You can replace 'register' with 'login' if you want it to redirect to the login form.  You could also create your own hybrid login/register page.

Edit: here's a way to do this with the ask-box widget as well, in qa-ask-box.php:

<FORM METHOD="POST" ACTION="<?php  
 
if(qa_opt('permit_post_q') == QA_PERMIT_USERS && !qa_get_logged_in_userid() && isset($qa_content['navigation']['main']['ask'])) {
    $userlinks=qa_get_login_links($qa_root_url_relative, isset($topath) ? $topath : qa_path($qa_request, $_GET, ''));                
    echo 'javascript:if (confirm(\'Asking questions requires you to login or register.  Would you like to register now?\')) document.location.href=\''.qa_html(@$userlinks['register']).'\';';
}
else echo qa_path_html('ask', $params);  
 
?>">
answered Sep 30, 2011 by NoahY
edited Sep 30, 2011 by NoahY