Docly

My organization’s logo is not showing in the Buddyboss Theme. How can I fix this?

Estimated reading: 3 minutes 67 views

The Buddyboss theme tries to influence the logo used in your site and is therefore trying to do the same thing as the Organization Toolkit. Themes always tend to win over plugins in circumstances like this, but there are a few changes that can be made to make sure your theme shows the organisation logo.

To make this work, you will need to have a Buddyboss child theme in place. If you don’t already have one of these please visit this page for more information about child themes.

Once you have a child theme in place, please complete the following steps:

1. If you haven’t got one already, create a folder inside your child theme called ‘template-parts’.

2. Copy the file site-logo.php from the ‘template-parts’ folder in the Buddyboss theme into the ‘template-parts’ folder of your child theme.

3. Edit the file you have copied over and after the line that looks like:

				
					$logo_dark_id = buddyboss_theme_get_option( 'logo_dark', 'id' );

				
			

and before the line that looks like:

				
					$logo  = ( $show && $logo_id ) ? wp_get_attachment_image( $logo_id, 'full', '', array( 'class' => 'bb-logo' ) ) : get_bloginfo( 'name' );

				
			

You can add the following code, which calls a function from the Organization Toolkit and overrides the Buddyboss defined logo if necessary:

				
					if (class_exists('B2BDash_Public')) {

    $b2bdash = new B2BDash_Public(1, 1);
    if (!empty($b2bdash->b2bdash_custom_logo())) {

        $logo_id = $b2bdash->b2bdash_custom_logo();
        $logo_dark_id = $b2bdash->b2bdash_custom_logo();

    }

}				
			

This will replace the logo on your site’s general theme.

4. To replace it on the LearnDash Focus Mode theme you need to add the following function to your child theme’s functions.php file:

				
					function buddyboss_is_learndash_brand_logo()
{

    global $post;

    if (class_exists('B2BDash_Public')) {

        $b2bdash = new B2BDash_Public(1, 1);

        if (!empty($b2bdash->b2bdash_custom_logo())) {

            return $b2bdash->b2bdash_custom_logo();

        }

    }

    if (class_exists('SFWD_LMS')) {
        $logo = LearnDash_Settings_Section::get_section_setting('LearnDash_Settings_Theme_LD30', 'login_logo');

        if (!empty($logo)) {

            return $logo;

        } else {

            return;

        }
    }

}				
			

This ‘buddyboss_is_learndash_brand_logo’ function exists within the Buddyboss theme, but we are defining a customised version of it to your child theme first before Buddyboss gets a chance to define it. Within the Buddyboss theme, the function is wrapped within a ! function_exists(), so there shouldn’t be any conflict issues here and your child theme function should take precedence.

Once both of these are in place, you should find that users from specific organisations see the relevant logo.

Leave a Comment

CONTENTS