Hi Silvershine,
It would be a little more difficult to get things set up to hide the form if the user has previously signed up. The reason being, to track if a user has previously signed up before we would need to either a) submit a request to the MailChimp API to cross check the email address already exists on the given list or b) set up cookies to store on the users system to remember that the user had previously signed up or c) the user would need to be logged in to cross check if a user had ever submitted the form before.
It is a very site specific question and not something that we had decided to build into the plugin. The reasons we haven’t built this feature in , is that some users would like the ability to submit multiple email addresses at signup or they would like to sign up a friend or something similar.
Also, when a user arrives on the site it would be very difficult to check what email address they use unless they were logged in and you just used the email address associated with their account. But this would require a separate call to the MailChimp API to cross check that email address on each page load, which may cause your API key to be revoked for overloading the MailChimp servers.
You can build into your site the ability to hide the form based on some variable you set up at the user level. You could create a custom user meta field which acts as a boolean, and when the logged in user submits the form, update the field to be set to true. On the front end of the site you could conditionally hide the form based on this field.
If your somewhat comfortable writing code and that’s the route you’d like to take, here’s a good tutorial on setting up custom user profile fields:
https://justintadlock.com/archives/2009/09/10/adding-and-using-custom-user-profile-fields
Let us know if you have any other questions!
Evan