Hide Pro Blog Templates From Sign-Up

Hi there,

I am wondering what method I could use to hide certain "pro" templates from the sign up. I realize there is no way to make pro level specific templates available on the front end; however, I was thinking a good work around would be to just "hide" the pro level ones and have the user contact me, so I could activate the template for them. I just want to be able to have the template already prepared for when they do contact me.

I read this post: https://premium.wpmudev.org/forums/topic/hide-templates-from-front-end-selection - where Vladislav explains you can copy them to a theme folder, but I am unsure how that would work. How would you activate the template? Would the user be able to do it? Would it no longer show up in the front-end selection?

Look forward to your response!


PS. Any other suggestions for a work-around here would be very appreciated!

  • PC

    Hey there Tyler,

    Thanks for your post.

    Currently developers are thinking on integrating New Blog Templates with Pro Sites where a Blog Template created using a Pro Theme will only be visible for Pro Members but as the template is chosen while signup, it would not be possible to restrict that as Pro Sites also allows you to offer free trials.

    Let me however call our lead developer @Ignacio on this thread for his feedback on the same.

    I think if we add an option to make a Template Public/Private so that we can choose which one is publicly visible.

    Let us see what Ignacio suggests on this one.

    Cheers, PC

  • Tyler Postle

    Hey again @PC - Thanks for the response. Yeah, marking one as private or public would be awesome!

    I realize it doesn't integrate with pro sites yet which I'm fine with and have no problem waiting until the feature gets released; however, just looking for a work around in the mean time. Being able to mark templates as "private" would be the best solution I can think of, until the full integration with pro sites gets released.

    Of course, I know that all updates take time no matter how big or small it is since you guys have to make sure it works with everything else. So, I'll try to be patient :slight_smile:

  • Ignacio

    Hi @TyePo.

    You're going to need two things:

    1) Add a filter in New Blog Templates (I will add it in the next version so you won't loose the changes in next update. You need to open the following file: blogtemplates/blogtemplatesfiles/blog_templates.php.

    Around line no. 473 you'll see this:

    @include $theme_file;

    You need to insert this right before that line:

    $templates = apply_filters( 'nbt_signup_templates', $templates );

    So, here are the final results:

    $templates = apply_filters( 'nbt_signup_templates', $templates );
    @include $theme_file;

    2) Now you need to make use of that filter. You could insert this piece of code in the theme you're using for your main blog or in a plugin. I'd recommend to create a new plugin so here it is:

    Create a new folder in your plugins folder (for instance plugins/blogtemplates-prosites) and a new php file (so now you have plugins/blogtemplates-prosites/blogtemplates-prosites.php for example).

    Open that file and paste this code:

    Plugin Name: Remove Pro Sites Templates (for New Blog Templates )
    Plugin URI:
    Author: TyePo
    Author URI:
    Version: 1.0
    Network: true
    add_filter( 'nbt_signup_templates', 'remove_pro_sites_templates' );
    function remove_pro_sites_templates( $templates ) {
    	if ( ! class_exists( 'ProSites' ) )
    		return $templates;
    	foreach ( $templates as $key => $template ) {
    		$blog_id = $template['blog_id'];
    		if ( is_pro_site( $blog_id ) )
    			unset( $templates[ $key ] );
    	return $templates;

    Network activate the new plugin and you'll see that every Pro Template won't appear on the signup list.

    Let me know if it works for you.