__('Sidebar', 'blogbend'), 'id' => 'sidebar', 'description' => 'Add global sidebar widgets here.', ); $sidebar_args['after_header'] = array( 'name' => __('After Header', 'blogbend'), 'id' => 'after-header', 'description' => __('Widgets placed in this region will be displayed below the header and above the main content.', 'blogbend'), ); $sidebar_args['homepage_before_posts'] = array( 'name' => __('Homepage Before Posts', 'blogbend'), 'id' => 'homepage-before-posts', 'description' => __('Widgets added to this region will appear on the homepage before posts listing.', 'blogbend'), ); $sidebar_args['homepage_after_posts'] = array( 'name' => __('Homepage After Posts', 'blogbend'), 'id' => 'homepage-after-posts', 'description' => __('Widgets added to this region will appear on the homepage after posts listing.', 'blogbend'), ); $sidebar_args['before_footer'] = array( 'name' => __('Before Footer', 'blogbend'), 'id' => 'before-footer-widgetarea', 'description' => __('Widgets added to this region will appear above the footer.', 'blogbend'), ); $footer_column = 3; $blogbend_footer_widget_layout = get_theme_mod('blogbend_footer_widget_layout', 'footer_layout_2'); if ( $blogbend_footer_widget_layout ) { switch ( $blogbend_footer_widget_layout ) { case 'footer_layout_1': $footer_column = 4; break; case 'footer_layout_2': $footer_column = 3; break; case 'footer_layout_3': $footer_column = 2; break; default: $footer_column = 4; } } else { $footer_column = 4; } $cols = intval(apply_filters('blogbend_footer_widget_columns', $footer_column)); for ($j = 1; $j <= $cols; $j++) { $footer = sprintf('footer_%d', $j); $footer_region_name = sprintf(__('Footer Column %1$d', 'blogbend'), $j); $footer_region_description = sprintf(__('Widgets added here will appear in column %1$d of the footer.', 'blogbend'), $j); $sidebar_args[$footer] = array( 'name' => $footer_region_name, 'id' => sprintf('footer-%d', $j), 'description' => $footer_region_description, ); } $sidebar_args['after_footer'] = array( 'name' => __('After Footer', 'blogbend'), 'id' => 'after-footer-widgetarea', 'description' => __('Widgets added to this region will appear after the footer and before sub-footer.', 'blogbend'), ); if ( class_exists( 'WooCommerce' ) ) { $sidebar_args['wc_sidebar'] = array( 'name' => __( 'WooCommerce Shop/Category Page Sidebar', 'blogbend' ), 'id' => 'wc-sidebar', 'description' => __( 'Widgets added to this region will appear on the shop or category page of woocommerce.', 'blogbend' ), ); $sidebar_args['wc_product_single_sidebar'] = array( 'name' => __( 'WooCommerce Product Page Sidebar', 'blogbend' ), 'id' => 'wc-product-single-sidebar', 'description' => __( 'Widgets added to this region will appear on detail page of a woocommerce product.', 'blogbend' ), ); } $sidebar_args = apply_filters('blogbend_sidebar_args', $sidebar_args); foreach ($sidebar_args as $sidebar => $args) { $widget_tags = array( 'before_widget' => '
', 'after_widget' => '
', 'before_title' => '

', 'after_title' => '

', ); // Dynamically generated filter hooks. Allow changing widget wrapper and title tags. . $filter_hook = sprintf('blogbend_%s_widget_tags', $sidebar); $widget_tags = apply_filters($filter_hook, $widget_tags); if (is_array($widget_tags)) { register_sidebar($args + $widget_tags); } } } add_action('widgets_init', 'blogbend_widgets_init');