function theme_get_sidebar_places($name) { global $theme_sidebars; $places = array(); foreach ($theme_sidebars as $key => $sidebar) { if (strpos($key, $name) !== false) { $widgets = theme_get_dynamic_sidebar_data($key); if (is_array($widgets)) { $widgets = array_filter($widgets, 'theme_is_displayed_widget'); if (count($widgets) > 0) { $places[$key] = $widgets; } } } } return $places; }
function theme_dynamic_sidebar($name) { global $theme_sidebars; $style = theme_get_option('theme_sidebars_style_' . $name); if (in_array($name, array('default', 'secondary'))) { $widgets = theme_get_dynamic_sidebar_data($name); return theme_print_widgets($widgets, $style); } $places = array(); $sum_count = 0; foreach ($theme_sidebars as $key => $sidebar) { if (strpos($key, $name) !== false) { $widgets = theme_get_dynamic_sidebar_data($key); if (is_array($widgets)) { $count = count($widgets); if ($count > 0) { $sum_count += $count; $places[$key] = $widgets; } } } } if ($sum_count == 0) { return false; } ?> <div class="art-content-layout"> <div class="art-content-layout-row"> <?php $place_count = count($places); foreach ($places as $place) { ?> <div class="art-layout-cell art-layout-cell-size<?php echo $place_count; ?> "> <?php if ($name == 'footer') { ?> <div class="art-center-wrapper"> <div class="art-center-inner"> <?php } ?> <?php theme_print_widgets($place, $style); ?> <?php if ($name == 'footer') { ?> </div> </div> <?php } ?> <div class="cleared"> </div> </div> <?php } ?> </div> </div> <?php return true; }
<?php global $theme_sidebars; $places = array(); foreach ($theme_sidebars as $sidebar) { if ($sidebar['group'] !== 'bottom') { continue; } $widgets = theme_get_dynamic_sidebar_data($sidebar['id']); if (!is_array($widgets) || count($widgets) < 1) { continue; } $places[$sidebar['id']] = $widgets; } $place_count = count($places); $needLayout = $place_count > 1; if ($place_count > 0) { if ($needLayout) { ?> <div class="cleantheme-content-layout"> <div class="cleantheme-content-layout-row"> <?php } foreach ($places as $widgets) { if ($needLayout) { ?> <div class="cleantheme-layout-cell cleantheme-layout-cell-size<?php echo $place_count; ?> "> <?php
function theme_print_sidebar($sidebar_id, $before = '', $after = '') { $widgets = theme_get_dynamic_sidebar_data($sidebar_id); if (!is_array($widgets) || count($widgets) < 1) { return false; } echo $before; foreach ($widgets as $widget) { theme_print_widget($widget); } echo $after; return true; }