__('Sidebar'), 'before_widget' => '
  • ', 'after_widget' => '
  • ', 'before_title' => '

    ', 'after_title' => '

    ', )); } function buildMenu(){ global $wpdb; $menu = '
  • Home
  • '; $pages = $wpdb->get_results("SELECT ID, post_title as title, guid FROM $wpdb->posts WHERE post_type='page' AND post_status='publish' AND post_parent='0' ORDER BY menu_order"); foreach ($pages as $page){ $url = get_page_link($page->ID); $menu .= sprintf('
  • %s
  • ', $url, $page->title, $page->title); } return $menu; } function ap_add_theme_page() { global $wpdb; $errorFlag = false; if ($_GET['page'] == basename(__FILE__)) { // save settings if ( 'save' == $_REQUEST['action'] ) { if (valid_colour($_REQUEST['ap_linkColour'])){ update_option('ap_linkColour', $_REQUEST['ap_linkColour']); } else { $errorFlag = true; } // goto theme edit page if($errorFlag){ header("Location: themes.php?page=functions.php&error=true"); die; } else { header("Location: themes.php?page=functions.php&saved=true"); die; } // reset defaults } else if('reset' == $_REQUEST['action']) { delete_option('ap_linkColour'); header("Location: themes.php?page=functions.php&reset=true"); die; } } add_theme_page(__('Alibi Theme Options'), __('Alibi Options'), 'edit_themes', basename(__FILE__), 'ap_theme_page'); } function ap_theme_page() { global $wpdb; ?>

    '.__('Settings saved.','').'

    '; if ($_REQUEST['reset'] ) echo '

    '.__('Settings reset.','').'

    '; if ($_REQUEST['error'] ) echo '

    '.__('Error - invalid color code','').'

    '; ?>

    BlogChemistry - available in 2 and 3 column layout versions - otherwise the option is short and sweet...','alibi'); ?>

    Pick a color
    6 figure hex code, with hash'; ap_cth(); ?>
    ', $var, $var, $type, $value, $onchange); break; case "submit": printf('

    ', $var, $type, $value); break; case "option": if($selected == $value) $extra = 'selected '; printf('', $value, $extra, $description); break; case "radio": if($selected == $value) $extra = 'checked '; printf('  ', $var, $var, $type, $value, $extra, $description); break; case "checkbox": if($selected == $value) $extra = 'checked '; printf('
    ', $var, $var, $type, $value, $extra, $description); break; case "textarea": printf('',$var, $var, $value ); break; } } function ap_th( $title ) { echo ''; echo ''.$title.' '; echo ''; } function ap_cth() { echo ''; echo ''; } function valid_colour($var){ $regex = '^#([a-f]|[A-F]|[0-9]){6}^'; return preg_match($regex,$var); } function ap_themeColour() { $tc = get_settings('ap_linkColour'); if (empty($tc)) $tc = '#FF0000'; echo $tc; return NULL; } ?>