Blog with Buddypress Site = too many plugins = way too slow

Hi there,

it looks like I might have to try some uncharted territory for me.

I have been struggling to find the perfect match of plugins that I need to setup a Blog with Buddypress and bbpress Community. Everytime I am getting close to either making all the plugins just work together something is breaking and if I get everything working happily the page load time starts bombing. Especially when activating SSL on my server. Which has way too many restrictions on the php settings anyway making everything even more difficult.

So. Weeks of trial and error. Almost losing the will to live with reinstalling Wordpress sometimes as often as 10 times in one day....

Here's my thought. What if I split the Blog from the Community? As far as I can tell this will solve the compatibility issues I have within the plugins/theme and it should make the pages load faster because it reduces the load of javascript and whatnot that the plugins are piling up. Less code to execute. Less problems. Happy me.

I was thinking something like
http://www.mydomain.com for the blog and then community.mydomain.com for Buddypress.

Would I go multisite or would two separate WP installs be better? And what is the price I am paying for that? Apart from the obvious that I won't be able to use shortcode and widgets from plugins that are only available in the other install?

And thinking a little ahead... eventually the whole mess would have to go multilingual. At least German and English for starters.

Or is there a simpler way of telling the plugins when to load all there extra code? E.g. there really isn't much of a point for what I am trying to setup to have all Buddypress Code loading when I am on a blog post. Or to have Easy Bootstrap Shortcode load on Buddypress pages when I only need it on one blog page.

What possible nightmares can I avoid by doing things right in the first place? And what are the right things?

Cheers,
Peter

  • James Morris

    Hello Peter,

    I hope you are well today.

    This definitely seems like a good fit for a Multisite install because that affords you the opportunity to centralize administration and share code across your network. Sharing shortcodes without having the parent plugin activated on the subsite could be problematic, but theoretically should be possible. It may take some custom coding to get this to work though.

    Another benefit is that your user base can be shared across the network with a Single Sign-on plugin.

    A lot of what you will want to do depends on what plugins you want to run. Restricting BuddyPress or bbPress to your subsite "community" would be simple because all you need to do is activate it on the subsite instead of network activating the plugins.

    The price you're paying for running multisite is the install is a bit heavier. While each subsite is run as it's own install from end-user standpoint, the fact that there's shared code and shared upload space, multisite installs are naturally heavier and require a bit more resources, especially on the database end. So, you will need to optimize your configuration for this model.

    I hope this clarifies a bit. Let us know if you have any further questions. We'll be happy to help! :slight_smile:

    Best regards,

    James Morris

  • Peter

    Hi James,

    after a week fiddling with Mulitisite I think I can say this looks like the right move. And even though you said that the install is a bit heavier on the reasources pingdom.com says that my site is loading in record time. Faster than on any regular Wordpress single site install I have ever tried and benchmarked on this host. Fastest page load times for "Hello World" with only a caching plugin and possibly Hummingbird installed pingdom.com clocked single site at a little below 0.3 sec while it dropped to well under 0.2 sec on multisite. I think fastest time I got was even as low 0,14 sec. So that looks very promising. :slight_smile:
    Maybe that's down to the webserver being Apache but MariaDB running on nginx apparently even on a separate system than the webserver. Never really thought about how databases are moving data back and forth internally.

    So, now I hope I can figure out the Single Sign on, so users can comment on the blog install while only logging in on buddypress. Or vice versa. Thanks for the tip.

    I do have another question though. I'm not sure yet if I really need it or if I can set up the project in a way where both blog and buddypress are quite disconnected.
    But what about this scenario: Buddypress/bbpress community has a group or forum that is related to topics in the blog. Is there an easy way to display those posts from the Blog install in a widget on the Buddypress install? And vice versa: Users is on the Blog site looking at some posts and there is a widget showing related groups or forums in the community subsite?

    Cheers,
    Peter

  • Luís

    Hi Peter ,

    Hope you're doing well today and thanks for your patience here!

    Regarding to your questions:

    But what about this scenario: Buddypress/bbpress community has a group or forum that is related to topics in the blog. Is there an easy way to display those posts from the Blog install in a widget on the Buddypress install? And vice versa: Users is on the Blog site looking at some posts and there is a widget showing related groups or forums in the community subsite?

    We have a plugin Recent Global Posts widget, that I think it may interest you:

    https://premium.wpmudev.org/project/recent-global-posts-widget/

    It allows you to show the recent posts from all the sites across your entire network in a widget. Not exactly the related posts feature you are looking for, but this may help or at least can be used as starting point.

    Regarding to the "related groups or forums", maybe the best idea is using BuddyPress network activated and change the root blog to a subsite:

    https://codex.buddypress.org/getting-started/installation-in-wordpress-multisite/

    This will allow you to use the default BuddyPress Group widget to show all the groups from the entire network, as an example.

    and as a quick thought: I was hoping to using Hustle and/or PopUp Pro with Automessage and e-Newsletter. Since the pop ups will likely be displayed on both sites - how do I avoid storing the user data input in two places? And I assume there is going to be some sort of predicament, when it comes to display rules and cookies e.g.

    I am afraid this will not be possible as PopUp Pro doesn't have any option to be used in a "network level" to set popups for the entire network. It will work in site by site basis.

    However, can you give us more details about your idea, so I can ping our SLS team (code experts :grinning: to get their valuable feedback?

    Cheers, Luís

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.