Welcome to BuddyDress

Our themes show off your site’s content - and do it well. We look for inspiration all around us - introducing personality for a dramatic effect that will bring your content to life.

Founded on the idea that your site should be exceptional in style and quality, we draw on classic design techniques to present a beautiful and unique collection of themes at an excellent value.

remember me
  

Add a widget anywhere in 3 simple steps

Widget areas are not just for sidebars you may want to place them anywhere on your theme.  This tutorial is going to easily show you in 3 simple steps how to add a widget area to anywhere.  For illustration purposes I’m going to use the default BuddyPress 1.2 theme.

We have both a video for this tutorial and below that the steps outlined for you.

Tutorial video

The tutorial

First of all you need to decide where you are going to add your widget area.  Some themes will have specific styling depending on where you place the widget along with styling you need to put in your widget declaration in your functions.php file.  We’re going to keep it simple though for this tutorial.  Our new widget area is going to be above the login / logged in user section of the sidebar.

1. Open up file you’re adding widget area into.

This first step requires us in this case to open up sidebar.php we’re going to first locate the section we want to add the code in and for us it is line 5.  Now we’re going to place the code:

<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('Sidebar-Demo') ) : ?>
<?php endif; ?>

As you can see we’re calling the sidebar demo here. Save that file.

2. Add to functions.php

Open up functions.php and find where the sidebars are declared in your theme.  In BuddyPress 1.2 Default it’s at line 8, once we are there we add from line 16 the following code:

register_sidebars( 1,
array(
'name' => 'Sidebar-Demo',
'before_widget' => '<div id="%1$s">',
'after_widget' => '</div>',
'before_title' => '<h3>',
'after_title' => '</h3>'
)
);

You can see we are making sure the same name is used as in Sidebar-Demo and also we use the format already used in the default theme.  Save that file once you’ve added your code. You can read more about the functions register_sidebars and register_sidebar at the codex. In this example we just copy the default BuddyPress code but the rule is register_sidebar for one and register_sidebars for more than one.

3. Add your widget:

Go into your admin and select appearance > widgets and find in this case Demo and add a widget.  Make sure that’s set and then refresh your front of the site.  There you go, that’s how to easily add a widget area to any part of your template.

For those that want to go a little beyond this you may want to have a message if no widgets are selected so you could where you place the code in your theme file simply add the following (you would want to style the class textwidget yourself):

<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('Sidebar-Demo') ) : ?>
<div>
<?php _e( 'Please log in and add widgets to this section.', 'buddypress' ) ?>
&nbsp;<a href="<?php echo get_option('siteurl') ?>/wp-admin/widgets.php?s=&amp;show=&amp;sidebar=sidebar-demo"><?php _e( 'Add Widgets', 'buddypress' ) ?></a>
</div>
<?php endif; ?>

As you can see with these simple steps it’s really easy to add a widget area to any part of your theme.  We hope you enjoy this tutorial and if you want to have tutorials on any other subjects just let us know.

39 Responses to “Add a widget anywhere in 3 simple steps”

  1. mikors says:

    Hello There

    We are michael kors sale factory and we sell all kinds of michael kors watches

    We provide drop shipping to all over the world,you can update our photoes on your own website or your facebook,and when you get orders,we will ship directly to your customers

    For more detail,welcome to check our website and enjoy your shoppping

  2. Наш магазин предлагает товары от крупнейших интернет магазинов китая Taobao.
    Представляем более 30.000 товаров: брендовая одежда, обувь, техника и многое другое по очень низким ценам .
    Мы помогаем Вам купить и доставить их в Россию, СНГ. С нами работать просто и безопасно. Подробнее на family-hearth.ru

  3. В продаже черепица от разных производителей,всех материалов для его установки по очень конкурентоспособной цене. Специалисты компании сделают необходимые расчеты; дадут исчерпывающие консультации по характеристикам материалов, технологий, их применения. Поставка материалов, приобретенных в городе бесплатно, доставка за пределы Екатеринбурга сниженным ставкам!

  4. alekseifedi says:

    Принимаем заявки на корм и траву для шиншилл
    Гранулированный корм для шиншилл:
    Минимальная партия 2 мешка по 25 кг
    1 мешок весом 25 кг – 1. 500 руб
    Также травы в гранулах, цветы и т. д., подробно на сайте шиншилл.рф .
    Доставка транспортной компанией в любой регион

  5. AUGUST says:

    Частный дом отдыха на Азовском море предлагает снять жилье (номер люкс или эконом) этим летом и провести отпуск на Азовском побережье в Кирилловке. К вашим услугам номера в Кирилловке категории люкс, стандарт, эконом, территория дома отдыха облагорожена, имеется парковка, детская площадка. Цены адекватные и доступные. Азов 2014 ждет своих гостей уже сегодня.Подробнее на domazov.ru

  6. Ольга says:

    Наша организация предлагает в розницу и оптом населению строительные материалы для загородного и малоэтажного строительства. Большой выбор материала для: кровли, фасада, водостоков, строительных и отделочных нужд.

  7. Елена says:

    Изготовление на заказ металлических дверей.
    Готовые модели дверей
    Межкомнатные двери
    Уличные двери
    Двери эксклюзив

  8. adrytv says:

    Наша организация оказывает населению города услуги сантехника, газовщика и электрика. Подробнее у нас на сайте мастер-сантехники.рф

  9. Наш магазин предлагает большой ассортимент, незаменимых для каждого человека, подарков на любой праздник или торжество
    Подробнее на нашем сайте spb-repair.ru

Leave a Reply