The idea is that you have a conditional check via the Shortcode. When the condition is true and content is displayed by that Shortcode, you might have another nested Shortcode within that particular block that checks something else. While this is absolutely possible, it requires an underscore _ prefix as outlined below. Example 1 (Bad/Invalid) […]
Knowledge Base
Knowledge Base Articles
Simple Expressions
Simple Expressions are supported by some Shortcode Attributes. They allow you to check multiple conditions within the context of a supporting Attribute, using logical operators such as AND, OR. You can also group conditions using round brackets, much like you would in a raw PHP expression. Attributes Supporting Simple Expressions current_user_can="{capability|expr}" current_user_bought_product="{ID|SKU|expr}" current_user_can_download="{ID|SKU|expr}" current_user_meta="{key|expr}" current_user_option="{key|expr}" […]
Arbitrary Custom Attributes
In addition to all of the Attributes that come with the Shortcode, you can also convert any PHP function into a Shortcode Attribute automatically. This functionality is disabled by default, but you can easily enable it from the plugin options page in WordPress. This feature packs a lot of powerful functionality! When Arbitrary Attributes are […]
Shortcode Attributes
The Shortcode can be used in many different ways. Below you will find documentation for all of the Shortcode Attributes that are currently supported, along with a few examples of their use. More examples can be found throughout our knowledgebase. Shortcode Attributes php="{raw}" (powerful ) current_user_is_logged_in="{bool}" current_user_can="{capability|expr}" current_user_is_paying_customer="{bool}" current_user_bought_product="{ID|SKU|expr}" current_user_can_download="{ID|SKU|expr}" current_user_meta="{key|expr}" current_user_option="{key|expr}" request_var="{key|expr}" Shortcode Modifier […]
Protecting Content by URI Pattern
Protecting content with URI Patterns allows you to protect almost any content served by WordPress. You can protect multiple Posts and Pages using wildcards and regular expressions with WRegx™ (Watered-Down Regex). Dashboard Location DashboardRestrictionsAdd Restriction Here you will find a meta box: Protected URI Patterns, where you can protect one or more URI Patterns. This […]
Packaging Custom Capabilities for Sale
Selling a Customer access to a Custom Capability (CCAP) implies that you are going to check for this CCAP somewhere in your theme, plugin, or in conditionals that you add to a Post. For example, if(current_user_can('access_ccap_something') where something is a CCAP you created. If the Customer paid for access to a Restriction that protects the […]
Packaging User Capabilities for Sale
When you protect a **User Role**, you create a package with the **Capabilities** associated with that **Role**.
Protecting Content by Category or Tag
Protecting a _Taxonomy Term_ of any type (for example: *Category*, *Tag*) protects permalinks leading to *Posts* that are associated with that _Term_.
Protecting Content by Author
Protecting an Author (a User who has authored a Post or Page) protects all Permalinks leading to Posts (of any type) that were written by that Author. Dashboard Location DashboardRestrictionsAdd Restriction This is where you create a new Restriction. There is a meta box here called Protected Authors where you can restrict content by particular […]
Protecting an Entire Post ‘Type’
Protecting a Post Type will automatically protect all Post permalinks associated with that Type. For instance, if you wanted to protect all bbPress Topics, you could protect the 'Topic' Post Type. The same would be true for any Custom Post Type that you might install via other plugins for WordPress. Dashboard Location See: DashboardRestrictionsAdd Restriction […]