Aquesta extensió no s’ha provat en les darreres 3 versions majors del WordPress. Segurament no està mantinguda o suportada, i pot tenir problemes de compatibilitat quan s’usa en versions recents del WordPress.

mmbrs

Descripció

The mmbrs plugin allows you to restrict content access using shortcodes.

Content may be restricted based on role, capability, user meta, and logged-in status.

What makes mmbrs different:

  • Restriction based on role, capability, user meta, and logged-in status is
    all in one place.
  • You are able to restrict content based on if a user is=’not’. For
    example, Show this content if a user is not an administrator.
  • You can pass multiple variables to the roles and capabilities shortcodes.
    For example, Show this content to users who are subscribers,
    contributors, or editors.
  • By default, any content within these four shortcodes is not displayed in
    feeds. You may also set the showinfeed=’yes’ attribute to show the
    content in feeds.
  • It is as lean as I could get it, with logic ordering to cut down on
    processing. Which isn’t saying much, but if you’ve got suggestions, I’m
    open to hearing them.

The four mmbrs shortcodes are:

  • [mmbrs_logged_in]
  • [mmbrs_roles]
  • [mmbrs_capabilities]
  • [mmbrs_user_meta]

[mmbrs_logged_in]

[mmbrs_logged_in]Content.[/mmbrs_logged_in]

  • Attribute: none
    • Shows content to logged in users.

[mmbrs_logged_in is=’not’]Content.[/mmbrs_logged_in]

  • Attribute: is
    • Optional.
    • is only accepts not.
    • Shows content to logged out users.
    • Case insensitive.

[mmbrs_logged_in showinfeed=’yes’]Content.[/mmbrs_logged_in]

  • Attribute: showinfeed
    • Optional.
    • showinfeed only accepts yes.
    • Shows content in the feed and ignores all other attributes when displaying in the feed. (If it is not being displayed in a feed, all of the attributes take effect.)
    • Case insensitive.

[mmbrs_roles]

[mmbrs_roles]Content.[/mmbrs_roles]

  • Attribute: none
    • Returns nothing.

[mmbrs_roles equals=’subscriber’]Content.[/mmbrs_roles]

  • Attribute: equals
    • Required.
    • Accepts multiple. e.g. equals=’subscriber,contributor’
    • Shows content to users with the ‘subscriber’ role.
    • Case sensitive.

[mmbrs_roles is=’not’ equals=’subscriber’]Content.[/mmbrs_roles]

  • Attribute: is
    • Optional.
    • Shows content to users who do not have the ‘subscriber’ role.
    • is only accepts not.
    • Case insensitive.

[mmbrs_roles showinfeed=’yes’]Content.[/mmbrs_roles]

  • Attribute: showinfeed
    • Optional.
    • Shows content in the feed and ignores all other attributes when displaying in the feed. (If it is not being displayed in a feed, all of the attributes take effect.)
    • showinfeed only accepts yes.
    • Case insensitive.

[mmbrs_capabilities]

[mmbrs_capabilities]Content.[/mmbrs_capabilities]

  • Attribute: none
    • Returns nothing.

[mmbrs_capabilities can=’delete_others_posts’]Content.[/mmbrs_capabilities]

  • Attribute: can
    • Required.
    • Shows content to users with the ‘delete_others_posts’ capability.
    • Accepts multiple. e.g. can=’delete_others_posts,edit_others_posts’
    • Case sensitive.

[mmbrs_capabilities is=’not’ can=’delete_others_posts’]Content.[/mmbrs_capabilities]

  • Attribute: is
    • Optional.
    • Shows content to users who do not have the ‘delete_others_posts’ capability.
    • is only accepts not.
    • Case insensitive.

[mmbrs_capabilities showinfeed=’yes’]Content.[/mmbrs_capabilities]

  • Attribute: showinfeed
    • Optional.
    • Shows content in the feed and ignores all other attributes when displaying in the feed. (If it is not being displayed in a feed, all of the attributes take effect.)
    • showinfeed only accepts yes.
    • Case insensitive.

[mmbrs_user_meta]

[mmbrs_user_meta]Content.[/mmbrs_user_meta]

  • Attribute: none
    • Returns nothing.

[mmbrs_user_meta key=’first_name’][/mmbrs_user_meta]

  • Attribute: key (with no content)
    • Required. (key attribute is required. Content is not required.)
    • Shows a logged-in user’s first_name meta value.
    • Does NOT accept multiple values when content is null/empty.
    • Case sensitive.

[mmbrs_user_meta key=’first_name’]Content.[/mmbrs_user_meta]

  • Attribute: key (with content)
    • Required. (key attribute is required. Content is not required.)
    • Shows content to logged-in user with the first_name meta value.
    • Accepts multiple as OR. e.g. key=’first_name,last_name’
    • Case sensitive.

[mmbrs_user_meta is=’not’ key=’first_name’]Content.[/mmbrs_user_meta]

  • Attribute: is
    • Optional.
    • Shows content to users who do not have the first_name meta value.
    • is only accepts not.
    • Case insensitive.

[mmbrs_user_meta is=’not’ key=’first_name’ equals=’Ben’]Content.[/mmbrs_user_meta]

  • Attribute: equals
    • Required.
    • Shows content to users who do not have the first_name user meta of ‘Ben’.
    • Case sensitive.

[mmbrs_user_meta showinfeed=’yes’]Content.[/mmbrs_user_meta]

  • Attribute: showinfeed
    • Optional.
    • Shows content in the feed and ignores all other attributes when displaying in the feed. (If it is not being displayed in a feed, all of the attributes take effect.)
    • showinfeed only accepts ‘yes’.
    • Case insensitive.

Other Notes:

For every shortcode, except [mmbrs_logged_in], if a user is not logged in, the shortcode will return nothing. The exception is when using is=’not’ in [mmbrs_logged_in], as in [mmbrs_logged_in is=’not’]Content.[/mmbrs_logged_in]

By default, everything is hidden from feeds unless showinfeed=’yes’ is defined.

Motivation for this plugin:

I wrote this plugin to fill some holes, reduce some unnecessary functions, and fix some minor bugs I found in other plugins. I now use this, and only this, to control all shortcode-based content access on my membership-style websites.

The Members plugin checks roles by checking capabilities. You are not supposed to do that. The proper way of checking roles is included here. Notes on this:

Aside from that, I love and use the Members plugin and suggest you check it out for other role- and capability-based content access management.

I removed a bunch of stuff from the User Meta Shortcodes plugin that I didn’t want. If you want the additional functionality, I recommend that plugin.

In the end, I wanted very clear control of in-post content via shortcodes. I wasn’t finding anything that was totally stripped down. So I wrote this.

Inspiration and Credits:

 

Instal·lació

  1. Upload plugin-name.php to the /wp-content/plugins/ directory
  2. Activate the plugin through the ‘Plugins’ menu in WordPress

PMF

None. Yet.

Ressenyes

No hi ha ressenyes per a aquesta extensió.

Col·laboradors i desenvolupadors

«mmbrs» és programari de codi obert. La següent gent ha col·laborat en aquesta extensió.

Col·laboradors

Registre de canvis

1.0

  • 2014.10.01
  • Released