1. Home
  2. Knowledge Base
  3. Customizations
  4. PHP Functions
  5. How to Set LearnDash Course Page Filter Default to “My Progress”

How to Set LearnDash Course Page Filter Default to “My Progress”

Introduction

BuddyBoss does not provide an option to set the LearnDash course page filter to My Progress automatically. You can achieve this with a small custom function. This guide explains how you can set LearnDash course page filter default to “My Progress”.

Custom Workaround

Before proceeding, make sure you have a complete site backup.

  1. Go to Appearance > Theme Editor in your WordPress admin dashboard.
  2. Under Select theme to edit, choose your active theme (preferably BuddyBoss Child Theme), then click Select.
  3. From the Theme Files list, click Theme Functions (functions.php).
  4. Paste the following code just before the closing PHP tag (?>):
// Make course default sorting as My Progress
function ldcourse_orderby_recent( $order_by_options ) {
    $order_by_options = array(
        'recent' => __( 'Newly Created', 'buddyboss-theme' ),
        'alphabetical' => __( 'Alphabetical', 'buddyboss-theme' ),
    );

    if ( is_user_logged_in() ) {
        $order_by_options[ 'my-progress' ] = __( 'My Progress', 'buddyboss-theme' );
    }

    return $order_by_options;
}
add_filter( 'BuddyBossTheme/Learndash/Archive/OrderByOptions', 'ldcourse_orderby_recent' );

function modify_default_orderby( $default_order_by ) {
    return 'my-progress';
}
add_filter( 'BuddyBossTheme/Learndash/Archive/DefaultOrderBy', 'modify_default_orderby' );
  1. Click Update File to save your changes.

Note: Modifications are typically considered custom work, but we are making an exception in this case. Please review the BuddyBoss Support Policy.

Troubleshooting and FAQs

Q: The filter still doesn’t default to “My Progress”.
A: Ensure the code is added to the active theme’s functions.php file and that the user is logged in.

Q: Can I set a different default for non-logged-in users?
A: Yes. Modify the $order_by_options array to include a default for guest users.

Q: Will this affect other LearnDash sorting options?
A: No. It only sets the default filter to My Progress while keeping other options available.

Q: Can I revert this change easily?
A: Yes. Remove the code from functions.php and save the file.

Q: Who can I contact for further assistance?
A: Please review the BuddyBoss Support Policy or consult a developer.

Was this article helpful?

Related Articles

Subscribe to Our Newsletter

Stay In Touch

Subscribe to our Newsletter, and we’ll send you the latest news from BuddyBoss

  • This field is hidden when viewing the form
  • This field is for validation purposes and should be left unchanged.

To speak to our Agency consultant, fill in the form found at our Contact Page.

  • Get Started

    Enter your name and email address to get started with your project...

  • This field is for validation purposes and should be left unchanged.