Hi Michele.
1- My first problem is that i don’t understand if i had to make one level for each type of subcription (monthly,semestral,annual) and so also 3 paypal button (one of each), that i will insert in a specific page not in member options page (the page mentioned in 2.2).
They’re all the same restriction, right? You’re only changing the payment plans. You can have different buttons to sell the same access. You can sell the same Level 1 with no free trial or with one, or with semestral payments, or annual, etc.
The free registration to get the paid access without having paid would need to be done with the free registration pro-form, though, not a button. [hilite path]Dashboard -› s2Member® -› PayPal® Pro Forms -› Free Registration Forms[/hilite]
2- The second question is that i need to add fields in registration form (such as company, piva etc..) for upgrading level form free to any other: this is possible (i understand) if the user is not logged in; but i need to forced free member logged-in to fill-in the additional fields before pay.
So level0 will find that additional fields in order to upgrade his level access but not find this fields during the first registration for obtain level0.
Right, if the user is logged in when paying for the access, he’s not going through a registration form, he’s already registered.
If you want to require the extra fields to be filled out, it’ll be a problem, because if you set the fields to be shown at the higher level, then the user upgrading won’t see them even if he goes to his profile page, since he’s not at the higher level yet. You’d need to show the fields to Level 0 users so they can be filled out before upgrade. [hilite path]Dashboard -› s2Member® -› General Options -› Registration/Profile Fields -> Applicable Membership Levels[/hilite]
That done, you’d need to have a conditional that checks if that field is empty or not, and based on show the upgrade button or a link to the profile page so he fills them out.
[hilite path]Dashboard -› s2Member® -› API / Scripting -› Advanced PHP Conditionals[/hilite]
[hilite path]Dashboard -› s2Member® -› API / Scripting -› PHP/API Constants[/hilite]
I hope that helps. :)