PrivateContent - Premium Plans Add-on


By: LCweb
Website: https://lcweb.it
Support: http://support.lcweb.it

Thank you for purchasing my plugin. If you have any questions that are beyond the scope of this help file, please feel free to open a ticket on my support platform. Thanks so much!

PRIOR NOTE:

To run this add-on you must have installed at least WooCommerce v2.5


Notes:

Plans visibility in registration forms

To enable and use the add-on you must have at least one plan that can be chosen in frontend forms

Plans visibility in renewal form

Since v1.2 you can also choose to exclude certain plans from renewal form

Avoid renewal?

Since v1.1 you can avoid renewal on specific plans. Once users subscription ends, user won't be able to re-enter privateContent

Product pages

PrivateContent plans are totally removed from frontend visibility and usage. They don't have URL nor can be listed, are uniquely used by PrivateContent forms

Notes:

Trial period

It applies to any plan and is stored individually for every user.
Then if you increase trial period, it will be applied only to new users.

Billing fields association

Is based on additional fields registered in PrivateContent engine. You can use User Data add-on or create them through API

Existing users association

Bulk applies a plan to existing users not associated with the add-on. Remember you can do it individually in "edit user" page.
Be careful: newly associated users will be put in "unpaid" status and need to pay to login in PrivateContent again.

Custom suggested plan

You can also change default suggested plan in frontend plans. Use pcpp_plan parameter in URL + plan ID

By default existing users aren't involved in add-on checks. This means they will still be able to login.
Is possible to associate a plan globally in Premium Plans add-on settings or individually editing an user.

Once associated with a plan, users will require an active subscription to be able to login. Statuses are

Expired Unpaid Trial Active

Then only users with active or trial status can login into PrivateContent.

Assigned plan, status and expiration date can be changed in "edit user" page. Here you can also check user orders history and eventually delete past orders.
Some useful notes about manual status change:


However status depends also from user's active order status (active order is the first one shown in table, in previous image).
This means:


Already existing users can be associated to plans directly in "edit user" page, individully.
Otherwise in Settings page there's a little wizard to bulk assign a plan to any not-associated user.

Be careful: for each new association a new order will be set up and users will be placed in unpaid status
The, they have to pay for their subscription in order to keep logging into PrivateContent.

Premium Plans add-on has got an automated subscription's renewal system.
This means as soon as user has got expired status, in login message they will be able to create a new order and pay it, without delays.

Then, by default, renew will be performed on same plan. However in settings you can change this behavior and allow plan's change.

  1. create a brand new wordpress page
  2. compose it as you prefer and finally use [pcpp-change-plan] shortcode to show plan's change form
  3. select that page in related settings option

PRIOR NOTE: to use this system you must have also Mail Actions add-on.

Go into Mail Actions add-on settings to find a new tab called "Premium Plans add-on". It will allow you to setup the reminder's title and text that will be sent via e-mail.

Please note this system needs a cronjob to be setup in your hosting panel: it is a very common tool allowing you to programmatically run scripts.
Please ask to your hosting support staff if you are not skilled on it.

This reminder will be sent only ONCE to every user having expired subscription status.

Creating plans you will be able to set specific restrictions requiring them, or also define further restrictions on an already restricted page.

Each category-selection dropdown used to specify some restriction will now have plans listed.
Let's take this restriction's wizard, in a normal WP page editor: This page has been restricted to be visible by "User Cat 1" users OR belonging to "intermediate level" plan.

This is valid across any category-based restriction system and using pc_user_check() API function.
Then is automatically integrated in categories, pages, posts, menus and widget restriction wizards. Obviously also in privateContent shortcode.

These shortcodes can be used in pages directly through PrivateContent's shortcode wizard:

[pcpp-user-plan]

Prints currently logged user's plan

[pcpp-subscr-expir date_format="j F Y"]

Prints currently logged user's plan expiration date. The optional date_format parameter can be used to specify a different date format from your website's global one. You must use PHP syntax.
Let's assume the subscription is gonna expire on 20 May 2018 and you use "l, F j, Y", the result would be: Sunday, May 20, 2018

[pcpp-subscr-expir type="cdown"]

Prints currently logged user's plan expiration countdow. For example if plan is gonna expire in 14 days, it will return "2 weeks"

Premium Plans ass-on is 100% multilanguage both for the front and the back-end. If a translation of your language has been created, Wordpress will automatically perform the switch.

Create a translation

If you have WPML + String Translation add-on or Polylang, you can simply scan the plugin and translate via its UI all the plugin strings.

Otherwise: going in the plugin folder, there is a folder called "languages". Inside you'll find the default.pot file. It contains all the english elements that have to be translated. If you want to create one in your language follow this steps:

If everything goes right, you will be able to use your translation.

If you create new translations, please, contact me at support@lcweb.it sending the .PO and .MO files.
I will put it in the new releases and mention you in the changelog. Thanks

To translate custom messages you need to use WPML + String Translations add-on