/** * called by the action get_sidebar. this is what places this into the theme */ static function get_sidebar($name = "0") { if (!is_singular()) { if ($name != "0") { if (is_active_sidebar($name)) { dynamic_sidebar($name); } } else { if (is_active_sidebar('sidebar-post')) { dynamic_sidebar('sidebar-post'); } } return; //dont do anything } wp_reset_postdata(); global $wp_query; $post = $wp_query->get_queried_object(); $selected_sidebar = get_post_meta($post->ID, '_ct_sidebar_widget_area', true); $did_sidebar = false; //this page uses a generated sidebar if (!empty($selected_sidebar)) { if ($selected_sidebar == 'default') { $did_sidebar = sidebar_generator::default_behavior(); } else { if (is_active_sidebar($selected_sidebar)) { dynamic_sidebar($selected_sidebar); } } } else { if ($name != "0") { if (is_active_sidebar($name)) { dynamic_sidebar($name); } } else { $did_sidebar = sidebar_generator::default_behavior(); } } }
/** * called by the action get_sidebar. this is what places this into the theme */ static function get_sidebar($name = "0") { if (!is_singular()) { if ($name != "0") { dynamic_sidebar($name); } else { dynamic_sidebar('sidebar-post'); } return; //dont do anything } wp_reset_query(); global $wp_query; $post = $wp_query->get_queried_object(); $selected_sidebar = get_post_meta($post->ID, 'sbg_selected_sidebar', true); $selected_sidebar_replacement = get_post_meta($post->ID, 'sbg_selected_sidebar_replacement', true); $did_sidebar = false; //this page uses a generated sidebar if ($selected_sidebar != '' && $selected_sidebar != "0") { if (is_array($selected_sidebar) && !empty($selected_sidebar)) { for ($i = 0; $i < sizeof($selected_sidebar); $i++) { if ($name == "0" && $selected_sidebar[$i] == "0" && $selected_sidebar_replacement[$i] == "0") { $did_sidebar = sidebar_generator::default_behavior(); break; } elseif ($name == "0" && $selected_sidebar[$i] == "0") { dynamic_sidebar($selected_sidebar_replacement[$i]); //default behavior $did_sidebar = true; break; } elseif ($selected_sidebar[$i] == $name) { $did_sidebar = true; dynamic_sidebar($selected_sidebar_replacement[$i]); //default behavior break; } } } if ($did_sidebar == true) { echo ""; return; } //go through without finding any replacements, lets just send them what they asked for if ($name != "0") { dynamic_sidebar($name); } else { $did_sidebar = sidebar_generator::default_behavior(); } echo ""; return; } else { if ($name != "0") { dynamic_sidebar($name); } else { $did_sidebar = sidebar_generator::default_behavior(); } } }