Skip to:
Content
Pages
Categories
Search
Top
Bottom

Widget areas for Groups, Forums, etc

  • Avatar of arnonel
    arnonel
    Participant

    @arnonel

    Hi Guys

    How do I create widget zones for the different parts of BuddyPress?

    eg, Id like the widgets on the Groups to be different from Forums, Members, HomePage, etc

Viewing 18 replies - 1 through 18 (of 18 total)
  • Avatar of oracleappscommunity
    oracleappscommunity
    Participant

    @oracleappscommunity

    good question…in old version bp1.1 we have the option to set first-section, second section,third section, blog-sidebar.

    In new version I see everything merged into one side bar widget, so we can’t have separate items displayed in groups, forums etc.

    Avatar of arnonel
    arnonel
    Participant

    @arnonel

    apologies, but have to bump

    Avatar of arnonel
    arnonel
    Participant

    @arnonel

    what if i get down on my knee and beg?

    :)

    Avatar of Paul Gibbs
    Paul Gibbs
    Keymaster

    @djpaul

    In your theme/child theme, you just need to add new widget areas in, same as any regular WordPress theme. I’m not a theme expert but have a look at http://www.themelab.com/2008/04/18/see-how-easy-it-is-to-widgetize-wordpress-themes/ under “Multiple Widget Ready Areas”

    Avatar of @modemlooper
    @modemlooper
    Moderator

    @modemlooper

    Avatar of stwc
    stwc
    Participant

    @stwc

    Nice work, modemlooper. That’s gonna save me some time!

    Avatar of arnonel
    arnonel
    Participant

    @arnonel

    @Modemlooper

    good stuff!

    any chance you could widgetize the main areas of BP as stated above?

    Avatar of Bowe
    Bowe
    Participant

    @bowromir

    @Aronel

    I’ve done this in a Child theme that will be released very soon.. I’ll try to share it here asap.

    Avatar of arnonel
    arnonel
    Participant

    @arnonel

    tx

    Avatar of @modemlooper
    @modemlooper
    Moderator

    @modemlooper

    @aronel Thats easy to do just create new sidebars for each and then create functions for each of those sidebars.

    sidebar.php

    sidebar-groups.php

    in your groups theme folder switch out the code that calls sidebar.php and add sidebar-groups.php

    You can also do this and create new zones on pages / slugs. Say at top of groups directory you want to have featured groups avatars. Easily done with widget zones.

    I was going to post this as a new thread, but it’s related to this so thought I’d drop it in here first…feel free to move if you don’t think it’s relevant enough.

    I was looking for a solution that allows me to have a different sidebar and set of widgets for different groups. I’m already using different sidebars for different BP components – but having a different sidebar on a group by group basis would be amazing!

    It doesn’t need to be a feature that users can control, just for us admins

    If this is possible, how?!!

    Cheers

    Avatar of Hugo
    Hugo
    Moderator

    @hnla

    One approach that could work for you would be to place this in your sidebar.php perhaps after do_action(‘bp_after_sidebar_login_form) and use it to wrap a newly created widgit area as described I think earlier.

    <?php if(bp_is_groups_component() && 'my-group-name' == bp_current_item()): ?>
    <?php dynamic_sidebar( 'sidebar group page' ) ?>
    <?php endif; ?>

    Or simply hard code stuff between the conditional. Of course there are undoubtedly other approaches one could take

    Avatar of Scotm
    Scotm
    Participant

    @scotm

    This may be pertinent, but I am using the Widget Logic plugin to control widgets across my install. It’s been great but I’m not sure how to control the logic for BuddyPress pages or if it’s even possible.

    For example, “!is_home() && is_user_logged_in()” allows me to place a widget in the sidebar anywhere but home where the user is logged in, but how might I use that logic to place it specifically on the Groups page, for example?

    Thx

    Avatar of Hugo
    Hugo
    Moderator

    @hnla

    Not sure I understand your question but I use a variety of methods in sidebar.php to control what manifests.

    It can call the sidebar widgit area under much the same circumstances you describe above it also allows for a number of new custom widget areas that I show on specific directory pages done like this:

    <?php if ( BP_GROUPS_SLUG == bp_current_component() && bp_is_directory() ) : ?>
    <?php dynamic_sidebar( 'sidebar group page' ) ?>
    <?php endif; ?>

    Which I think is what you’re referring to? of course you can place anything within that group check doesn’t have to be dynamic_sidebar.

    For example, “!is_home() && is_user_logged_in()” allows me to place a widget in the sidebar anywhere but home where the user is logged in, but how might I use that logic to place it specifically on the Groups page, for example?

    have a look in bp-core-templatetags.php and under the section:

    /* Template is_() functions to determine the current page */

    There is a much easier way to do this. To have widgets only show up on certain pages I just use this plugin, Widget Logic: http://wordpress.org/extend/plugins/widget-logic/

    Avatar of Dimon
    Dimon
    Participant

    @diezel555

    Buddypress Sidebar! This plugin enables you to have multiple sidebars for Buddypress. Create new sidebars that are unique to each page.

    Avatar of Miko
    Miko
    Participant

    @mikosoft

    Re: BuddyPress Sidebar
    I can make it display things on blog pages, but how do I make it display things on normal static WP pages? I have checked the Show Component & Action thing in BP Sidebar but that doesn’t seem to help.

Viewing 18 replies - 1 through 18 (of 18 total)

You must be logged in to reply to this topic.