Hi there,
This is a very simple project for someone who’s got experience with PHP, My SQL.
I am looking for a custom script that can be installed on a server through MySQL database. The function of the script is simple- Make the wordpress site a membership site.
Here are the features I am looking for…
1. Category based membership site.
With WordPress, I can have as many categories as I want. Utilizing this feature, I want to keep all my products and membership sites on one domain in one blog.
I want to assign a category to each product/membership site. So any post made in the category 4 would be accessible only to the users authorized to view the posts of that category. Or in other words, buyers/subscribers of that product/membership.
Eg..
Cat 1 can be accessed by buyers of product A ONLY
Cat 2 can be accessed by buyers of product B ONLY
Cat 3 is a PAID membership site so only the active subscribers (currently paying members) can see the posts from that category.
Cat 4 is a FREE product so any registered user (anyone can sign up to the blog) can see it…
Cat 5 is a free membership site so any registered user can see it. Even if they haven’t bought into any other category yet.
Cat 6 is an open category so any one can see the posts in that category… anyone at all. Even the regular visitors to the site who are not yet registered.
So the different types of categories are..
A. Open… ANYONE, even non registered members can view these posts.
B. FREE… All the registered members can see the posts… regardless of which category(s) they subscribe to …
C. Paid… With any pricing terms, one time, trial for some days (10 days) or 6 months, and thereafter $xx per month (or thereafter $xx for one time only) or (thereafter $xx for 6 times only). You see I want completely flexible pricing options.
Now I can chose to have just one pricing option for a paid category, or I can let them chose from a group of pricing terms (they may have three pricing options on the sign up page “yes.php” about which I will discuss more in a moment. So they may have the following pircing options…
A. $17/month
B. $1.95 trial for 30 days, thereafter $17/month
C. $27 for lifetime
and they decide which option they want.
********************************************************
2. CUSTOM BONUSES
Cat 7 is a PAID product that can be accessed only by the buyers of this product, however I want to give all these members a bonus – 6 months (or ten days or 30 days or 12 years or lifetime… whatever… I can select this) free subscription to paid membership category 3. Unless its life term, they’ll be automatically billed for category 3 at the end of the free period at the same rate as everyone else OR at a special price that I specify ONLY for Cat 7 buyers.
I can offer as many bonuses I want with each category.
I can select any one or more categories to be a bonus for any category… For cat 8 I may select the following bonuses…
A. 30 days free Cat 3, therefater special price
B. Free lifetime access to product A
C. 14 days free trial to product b, and if they don’t cancel, they get charged one time a special price that I specify here.
So when I select bonuses for a category, I get to specify the pricing terms for the bonuses as well. These settings will simpy override the original pricing terms for the bonus category(s).
Bonuses can be compulsary or optional. I also want to be able to offer them multiple pricing options for bonuses as well.
*******************************************
3. Users and sign up process
Can be visitors to the site… can only view the OPEN category posts. Free registered members can view free membership categories.
One user may surely sign up for more than once category.
The sign up process begins from any web page that I choose… which will have aweber sign up form. As soon sa they sign up there, they’ll be taken to this Thank you page… (this is the actual sign up page and each category will have its own sign up page)
http://www.domain.com/blog/wp-category-number/yes.php?somemoredata
This some more data contains two (or more) fields they’ve already filled out- their Name and their email address in the form of forwarded variables. This data is automatically stored in the database for our membership script. Now this yes.php sign up page will not ask them their name and email again. Nor will it ask them which category they want into… since that is already obvious from the category number in the above URL. This will simply ask them to select a user name and password, and optionally fill in their home address, Phone number, twitter, Skype, AIM, Yahoo Messenger, Facebook, Myspace, Blog, Website URL, and Youtube channel URL as well. Note, all these fields can be filled in at a later stage as well, once they are logged in… they can fill in more data about themselves which will be added/updated to their account. They can go back and change it too. But they can not change their user name or their own name of course.
I also want a captcha code on the sign up page.
The username must be small letters only, without special characters, just alphabets and numbers.
Now the most important thing- multiple pricing options. If I have selected multiple pricing options, they should be visible here in the radio button format.
Also, all the bonuses must be visible here.
Compulsary bonuses do not have a check box next to their name, whereas optional bonuses do. If a bonus has multiple pricing options, they can simply be displayed in the radio button format, and if its an optional bonus, they’ll first need to check the check box before they can select either one of the multiple pricing options.
Custom design options for Yes.php. Each category’s yes.php can be made as unique as I want, although by default they’ll all look the same for all the categories. The following options can be varied for all categories individually.
A. Three sidebar options…
Option 1. I may want to turn off all sidebars for this page.
OPtion 2. Or I may want to turn on any available sidebar from my installed theme here. I want to be able to see all of the already installed sidebars in a drop down menu.
Option 3. Or I may want to install a special sidebar just for the yes.php for this category… which will be named “4-yes.php” for category 4.
Now, if I have already created a unique sidebar for category 1 named 1-yes.php, I may use that as my sidebar for yes.php on category 3 as well via a drop down menu as specified in option 2.
B. Optional custom Stylesheet CSS…
I may want to have a completely new look for my yes.php for any or each category, and I may get a completely new stylesheet.css designed for that. All I need to do is paste the URL of the css file here once its already uploaded on my server, and yes.php will automatically use that stylesheet
C. Optional Custom Header
If I have a custom header.php designed for a paritcular category’s yes.php page, I can simply paste its URL here in this field.
By default, yes.php uses the header.php as well as the stylesheet.php of the blog theme.
D. And the last thing we need to be able to design is the pay now button. We can simply paste the URL of any image here, and that becomes the payment button. By default its a simply submit button though
****************************************************************
4. Payment options…
Right now, I just want it to work with paypal and Ultracart. But later on I will add other options like 1shoppingcart and Limelight CRM and Orange CRM and Authorize.net once we start using them and/or getting the demand for them.
For now, while setting up my yes.php inside the wp-admin area, I simply want to be able to fill in a PayPal email address.
I can use a different Paypal email for each category I want, and there are no sitewide defaults here. I simply have to fill it in for each category, just like its pricing options.
If I am using Ultracart, I can simply attach the product SKU from Ultracart to a category. In this case, i will simply have all my pricing options from Ultracart.
Our site simply retrieves data from Ultracart about each user- which all SKU’s did they buy/which all categories they are subscribed to.
*********************************************
5. Variable Forwarding
Here’s an example of the forwarding URL
http://www.domain.com/blog/wp-category-number/yes.php?from=roger007philip%40gmail%2ecom&meta_adtracking=&meta_message=1&meta_required=from&meta_split_id=&meta_web_form_id=5395547&name=Roger%20Philip&submit=Submit&unit=hdtv%5fk
Here, only two variables are being forwarded… namely “from” and “name” which contain email id and the name of the subscriber respectively.
However, I might want to do something like this…
http://www.domain.com/blog/wp-category-number/yes.php?custom%20address=dsf&custom%20telephone=1%2d573%2d333%2d1888&from=rogser007philip%40gmail%2ecom&meta_adtracking=&meta_message=1&meta_required=from&meta_split_id=&meta_web_form_id=1634160735&name=Roger%20Philip&submit=Submit&unit=hdtv%5fk
Notice the extra fields here… address and telephone as in “custom%20address” and “custom%20telephone” respectively.
So if a user now fills them in, they need to be automatically stored in the database.
The question is how will the yes.php know about what all is being passed along.
And that is what we can do in advanced yes.php setup in the wp-admin area.
While tweaking the settings for yes.php page, I can also specify which data fields are being forwarded, so those are not repeated on the yes.php page again. Also, I I say phone number is being forwarded, I need to type in the field name as well (I’ll need to type in “custom%20address” without quotes nect to phone number field)
By default, only “from” and “name” as assumed to be forwarded.
***********************************************************
6. Non-authorized members trying to access…
What if a user who’s not authorized for category 2 tries to access category 2? Simple… They are taken to a specified web page URL. While setting up yes.php options in the wp-admin area, I will be able to specify what this URL is. It maybe a open post/page on the blog itself. Or maybe some other page/post outside the blog anywhere on the web.
Previews… I want it to work just like the free hidpost plugin… where I can specify where the hidden content starts and stops. Anything outside Before and after the hidden content is visible to ALL… even regular non registered visitors.
So if I create a post for category 3, all of its content outside the hidden contents is open for all to view. And obviously I will put the meat of the content within the hidhing tags. Hidepost plugin uses the [hidepost] and [/hidepost] tags to set the hidden content from the preview content.
Comments are hidden by default, and non-authorized users can not see the comments for a particular post.
If someone is not logged in, they see the preview content, and then this sentence… (in this order)
PreviewContent
PreviewContent
PreviewContent
PreviewContent
PreviewContent
Please login or register to continue…
“Login” and “register to continue” are two separate links leading to login page and the registration page respectively.
Now while there is one login page site wide, each category has its own registration page as discussed above.
They are taken to the registration page of the category that this post belongs in.
If they are already logged in and still unauthorized to view the category, they see the following text…
PreviewContent
PreviewContent
PreviewContent
PreviewContent
PreviewContent
Please Upgrade to continue…
Here Upgrade is the link and it leads to the particular registration page for this category.
*********************************************
7. Delayed content
I may not want a new member to be able to see a particular post until 60 days after they subscribe that post’s category.
Whenever I create a post, I need to be able to select this option (along with the category(s) that that post belongs to and the hidden portion). I want to be able to select a delay time… it can be 1 day, it can be 60 days it can be 1000 days. Whatever i want, i simply ytpe that number in. By default this field is 0 though, which would mean all the members subscribed to this category can see it. Whether they joined yesterday or 5 years ago doesn’t matter.
If a post belongs to multiple categories, I want to be able to select the time delay for each category separately.
************************************************************
8. Hidden content in the search engine organic rankings
I have seen this happen before. David of membershipacademy.com uses this strategy. Even if content of one of his posts is hidden to non-members, it still sppears in the search engine rankings as if there were no password protection. I want this to be a feature of my sites too.
**************************************************************
9. Protection
I want to be able to offer this script for sale as well apart from my own use. So I guess protecting it with ioncube or some other technology is in order.
I want my buyers of this script (subsequently called admins) to be able to do all the above mentioned things, of course.
But I want to sell a per domain license basis for whatever price I want. They buy a single domain license- they can use it one domain only.
I am planning the following levels for my admins…
A. Single domain license (Maybe $20 for first domain, thereafter $10/domain)
B. Three Domain License ($50 for first 3, thereafter $9/domain)
C. Marketer edition – unlimited domains (only their own business) ($299 + $29.95/month)
D. Professional Version – Unlimited domains (Their own business and/or a limited number of other people’s businesses as well- saty 25 other businesses, thereafter $5/month per business) ($999 + $99/month)
Of course I need the pricing flexible.
So there you go.
The project might look lengthy, which I agree it is slightly lengthy, but its ont very complex.
All such features are already on the market, just not compiled in one place.
Please let me know how you quickly can you get it done, and how much would you charge for it?
This will include future updates as well, so this is not just a one time project. I will definitely prefer to work with you if you can help me with this later on down the line as well.
One last thing- If all this looks something that can be done with user-levels and hidepost plugin, then forget it. This project is not for you most definitely.
I look forward to working with you and talking to you real soon.
-Roger