myCred is a points management system built specifically for WordPress powered websites. It was built to contain everything one would need for using “points” on a website.
“Points” can mean a lot of different things, so the plugin was written to help you setup most common point related setups, ranging from simple point balances with manual adjustments to building your own store loyalty program. I put together a list of some of the most common ways myCred can be used you can explore.
There are thousands of plugins for WordPress and the last thing I wanted, was to build a plugin that attempts to do it all. myCred does only one thing: points. Every single feature that comes with the plugin has something to do with points.
Keep it simple
myCred has a lot of potential usages, so it can be a bit intimidating. For this reason my primary goal was to make things as simple as possible or make the learning curve as quick as possible. To do this, a lot of effort has been put in making the plugin as clean and straightforward as possible. Furthermore I mimic WordPress in many places to help you familiarize yourself with the plugin. Have you ever activated or editing a widgets settings in your admin area? Well then you already know how to activate and edit myCred hooks.
This also extends to third-party plugin support. If a plugin that myCred has built-in support for is not installed on your website, the settings for that plugin will not be visible. This way, myCred will only show you settings / options / hooks that you can use.
Opt-in, not opt-out
Once you have installed, enabled and setup your first point type, myCred provides you only with the most basic point related features:
- Each user on your website gets to have a point balance.
- You as an administrator and/or editor, you can adjust these balances.
- A log is installed so if you make any adjustments and want to keep a record of it, you can.
- You gain access to a list of shortcodes to help present these balances and / or history to your users.
Thats it. From here on, it is up to you to enable whatever feature you want to use. If you want to give points automatically you will need to enable and setup your hooks while most other features requires add-ons to be enabled.
Built to be used on WordPress powered websites, myCred requires WordPress 4.0 or higher as of version 1.7. Previous versions are confirmed to working on WordPress 3.8+ but older versions are not supported.
Note that since myCred ties points to WordPress users, it will not work with external user sources or visitors to your websites. If you for example have your users stored externally, and users do not log into WordPress to access the website, myCred will not be able to assign the users points.
- PHP 7.0+
- MySQL 5.0+
myCred was not built to “do everything”. Instead the plugin was built to be developer friendly to allow further features to be added with ease.
myCred is being used on small to very large communities, managing thousands of balances. While balance management is supported on very large sites, certain add-ons would require customization to run efficiently with large number of users. Particularly the Banking add-on services would require some adjustment to manage large number of users.
Finally the myCred add-on does not offer a withdrawal system. Users can buy points for real money but they can not exchange them back into real money. This is due to legal issues as depending on where in the world you are, using myCred as a financial tool might be seen as a “banking software” and be subject to regulation. It also would prevent me from selling my gamification add-ons such as the Lottery add-on or the Scratch Card add-on.
myCred however does not prohibit you from building a withdrawal tool yourself! It is just a feature that will not be included in myCred. How you use myCred or what customizations you add, is all up to you.
Wouldn’t it be better practice to use get_the_title(..) in this case? directly accessing the post object’s data member would bypass applying filters and enforcing protected and private settings, unless that’s explicitly desired.
If you need special things—[shortcodes], paragraph tags, anything exciting—in the content, you should apply the filters as opposed to using do_shortcode().
$post = get_post( 42 );
$output = apply_filters( \’the_content\’, $post->post_content );