A free points management plugin for WordPress.
myCRED Logo
myCRED Logo
  • Chapters
    • Chapter I – Introduction
    • Chapter II – Getting Started
    • Chapter III – Add-ons
    • Chapter IV – Premium Add-ons
    • Chapter V – For Developers
    • Chapter VI – Reference Guides
  • Categories
    • Actions
    • Classes
    • Constants
    • Filters
    • Functions
    • Objects
    • Shortcodes
    • Hooks
    • Template Tags
  • Packages
    • mycred/api
    • mycred/badge
    • mycred/balance
    • mycred/banking
    • mycred/content
    • mycred/core
    • mycred/coupon
    • mycred/email
    • mycred/game
    • mycred/log
    • mycred/notice
    • mycred/payment
    • mycred/purchase
    • mycred/rank
    • mycred/transfer
  • Store
  • Download
Chapter I
Introduction
  1. The Plugin
  2. Points
  3. The Log
  4. Administration
  5. Automatic Points
  6. Multisites
    • Master Template
    • Central Logging
  7. Add-ons
  8. Supported Plugins
  9. BuddyPress
  10. Usage Examples
  11. Limitations
Chapter II
Getting Started
  1. Installation
  2. Point Type Settings
  3. Multiple Point Types
  4. Adjusting Balances
  5. Setup Hooks
  6. Import Data
    • Importing Balances
    • Importing Log Entries
    • Import CubePoints
  7. Export Data
  8. Widgets
  9. Shortcodes
  10. Optimization
  11. Uninstall
Chapter III
Add-ons
  1. Badges
    • Creating Badges
    • Manual Badges
    • Displaying Badges
    • Developer Resources
  2. Banking
    • Central Banking
    • Compound Interest
    • Recurring Payout
    • Developer Resources
  3. buyCRED
    • Selling Points
    • Add-on Setup
    • Payment Gateways
    • The Checkout Page
    • Pending Payments
    • Developer Resources
  4. Coupons
    • Creating Coupons
    • Redeeming Coupons
    • Coupon Management
    • Developer Resources
  5. Email Notifications
    • Add-on Setup
    • Creating Emails
    • Unsubscribe
    • Developer Resources
  6. Gateway
    • WooCommerce
    • WP E-Commerce
    • Event Espresso
    • Events Manager
    • Developer Resources
  7. Notifications
    • Troubleshooting
    • Developer Resources
  8. Ranks
    • Introduction
    • Add-on Setup
    • Create New Rank
    • Displaying Ranks
    • Developer Resources
  9. Sell Content
    • Add-on Setup
    • Manual Mode
    • Available Shortcodes
    • Troubleshooting
    • Developer Resources
  10. Statistics
  11. Transfers
    • Add-on Setup
    • Available Shortcodes
    • Transfer Messages
    • Transfer Types
    • Developer Resources
Chapter IV
Premium Add-ons
  1. ProgressBar
    • mycred_badges_progress
    • mycred_my_ranks_progress
  2. The myCRED Store
  3. buyCRED Gateways
    • Stripe
    • Payza
    • Wepay
    • PayFast
    • 2checkout
    • Coinbase
    • ComproPago
    • Paymentwall
    • Robokassa
    • CoinPayments
  4. Third-party Bridges
    • myCRED for WPBakery Page Builder
    • myCRED for UserPro
    • myCRED for Users Ultra
  5. Games
    • myCred Learndash
    • Fortune Wheel Addon
    • Lottery Add-on
    • Scratch Cards Add-on
    • Custom Set for Scratch Card Add-on
  6. Enhancements
    • Notifications Plus
    • Transfer Plus
    • Twilio Transfers
    • Video Add-on
    • Video Add-on for JW Player
    • BuddyPress Charges
    • Partial Payments – WooCommerce
  7. Store Gateways
    • Jigoshop
    • Easy Digital Downloads
    • WPMUDEV Fundraising
  8. Freebies
    • BP Group Leaderboards
      • Plugin Setup
      • Caching
      • Leaderboard Customizations
      • Custom Leaderboard Types
    • myCRED for Events Manager Pro
Chapter V
For Developers
  1. Introduction
  2. White Labeling
  3. Flowcharts
  4. Playing with Balances
  5. myCRED Objects
  6. Log API
  7. Hook API
  8. Module API
  9. Gateway API
  10. Remote API
    • Version 1.0
    • Version 2.0
  11. Front-end Encryption
Chapter VI
Reference Guides
  1. Log References
  2. Shortcodes
  3. Template Tags
  4. Globals
  5. Constants
  6. Actions
  7. Filters
  8. Objects
  9. Functions
  10. Classes
Custom Leaderboard Types

Since leaderboards can be based on so many different things, the plugin was made as developer friendly as possible, in order to allow customizations. In this guide, I will walk you through how a custom leaderboard type that will allow us to generate a leaderboard for our current year.

This guide requires basic understanding of PHP and WordPress development.

Add Our Custom Type

First, we will need to add our type the list of leaderboard types that are shown in the admin area. This list is also used to tell the plugin that a custom type might exists. We will do this using the mycred_bp_leaderboard_types filter. You can use this filter not just to add your own type but also to rename existing ones or for example removing unwanted types.

The Leaderboard Query

Next we need to handle the database query and setup of our leaderboard type. This is by far the most important function. To do this, we can use the mycred_bp_leaderboard_get filter. Our custom function needs to check if a cached leaderboard exists, if not query a new one and add support for appending users to the end of the leaderboard (if enabled).

The Position Query

Finally we need to handle a users leaderboard position. For this, we will be using the mycred_bp_leaderboard_find_position filter. This is mainly used when a user is appended to a leaderboard (assuming it is something you use). If this is not done, all appended users position will be the total number of group members.

It is important to remember that unlike the mycred_bp_leaderboard_get filter, this filter only runs when a users cached position has been deleted and a new query is needed.

About myCRED

myCRED is a free, open-source and developer friendly points management tool for WordPress powered websites.

Download Rate Plugin

Documentation

  • Add-ons
  • Core Shortcodes
  • F.A.Q.
  • Tutorials
  • Third Party Plugins
  • Code Snippets

Support

  • Product Licenses
  • Customization
  • Support Forums
  • Plugin Changelog
  • Contact

Copyright 2013 - 2019 byWPExperts; All rights reserved. myCRED is licensed under GPL 2.0

Terms & Conditions • Use of Cookies • Store Policy • Community Rules

Suggest Codex Example

You can submit suggestions for codex examples that you have available as a public gist. If you are a member on the mycred.me website, you can earn Tokens for each submission. To claim these Tokens, make sure you provide your mycred.me username.

Please make sure the example you submit is relevant and if you include documentation, it's provided in English.

  • Chapters
    • Chapter I – Introduction
    • Chapter II – Getting Started
    • Chapter III – Add-ons
    • Chapter IV – Premium Add-ons
    • Chapter V – For Developers
    • Chapter VI – Reference Guides
  • Categories
    • Actions
    • Classes
    • Constants
    • Filters
    • Functions
    • Objects
    • Shortcodes
    • Hooks
    • Template Tags
  • Packages
    • mycred/api
    • mycred/badge
    • mycred/balance
    • mycred/banking
    • mycred/content
    • mycred/core
    • mycred/coupon
    • mycred/email
    • mycred/game
    • mycred/log
    • mycred/notice
    • mycred/payment
    • mycred/purchase
    • mycred/rank
    • mycred/transfer
  • Store
  • Download