I want to make the following happen in Wordpress

  1. People answer questions in paginated or single page form.
  2. Each next set of options is dependent on the option the user selects preiviously
  3. At the end, the user is directed to a page which is a common ending for all questionnaire trees.
  4. All this questionnaire options can be viewed/exported

Question: How can this be done? or if there is a plugin available for a similar purpose? If not wordpress, is there another CMS that offers this?

migrated from stackoverflow.com Jul 27 '11 at 15:13

This question came from our site for professional and enthusiast programmers.

  • 2
    Very good idea, make it happen – MarvinLabs Jul 27 '11 at 8:29
  • 2
    ... More seriously, I could not find a single question mark in your question. Be specific. Show you tried to find some solutions. – MarvinLabs Jul 27 '11 at 8:30
  • apart from the humour, I was short on time earlier, just managed to slip in the text, added the question now. :P – OrangeRind Jul 27 '11 at 13:27

This plugin is capable of doing exactly what you are after http://www.gravityforms.com/

  • Geez, this looks like it! – OrangeRind Jul 30 '11 at 8:23

I don't know of any plugin that does what you want, but you could implement your logic in the index.php or page.php, and simply include templates based on the contents of $_POST. The only thing to remember is to pass the values received at the subsequent stages of the form to the next stage (you can generate <input type="hidden"> fields).

Alternatively, you may contain the entire form with all its branches in one template, and switch the branches on and off with javascript. jQuery makes it very easy to watch the form contents change, and to hide and show relevant parts of the form. This solution would enable you to use an existing form-building plugin, such as this powerful one: http://wordpress.org/extend/plugins/contact-form-7/

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.