function get_sidebar_selector_args() { //Create the fields to be displayed on the meta box $sidebar_selector_fields = array(array('name' => 'sidebars', 'desc' => 'Select which sidebar will display on this page.', 'id' => 'sidebar_selector_sidebars', 'type' => 'select', 'options' => get_registered_sidebars())); $sidebar_selector_boxes = array('id' => 'page-sidebar', 'title' => 'Page Sidebar', 'callback' => 'display_sidebar_metabox', 'page' => 'page', 'context' => 'side', 'priority' => 'low', 'fields' => $sidebar_selector_fields); return $sidebar_selector_boxes; }
function theme_add_sidebar($arg) { $name = apply_filters('widget_title', $_POST['sidebar_name']); $description = format_to_edit($_POST['sidebar_description']); if (!empty($name)) { $registered_sidebars = get_registered_sidebars(); if (!in_array($name, $registered_sidebars)) { global $wp_registered_sidebars; $sidebars = get_option('generated_sidebars'); $sidebar_id = register_sidebar(array('name' => $name, 'description' => $description, 'before_widget' => '<div id="%1$s" class="widget-container %2$s">', 'after_widget' => '</div>', 'before_title' => '<h3>', 'after_title' => '</h3>')); $sidebars[$sidebar_id] = $wp_registered_sidebars[$sidebar_id]; update_option('generated_sidebars', $sidebars); $up = get_option('generated_sidebars'); add_settings_error('general', 'settings_updated', __('Sidebar successfully added.'), 'updated'); } else { add_settings_error('sidebars', 'name', __('Sidebar already exists, please use a different name.', TEMPLATENAME)); } } else { add_settings_error('sidebars', 'name', __('Sidebar name cannot by empty.', TEMPLATENAME)); } set_transient('settings_errors', get_settings_errors(), 30); $goback = wp_get_referer(); wp_redirect($goback); exit; }
function _get_sidebar_list() { $sidebars = get_registered_sidebars(); return array('disable' => __('Disable sidebar', TEMPLATENAME)) + $sidebars; }