admin_header_callback = $admin_header_callback; $this->admin_image_div_callback = $admin_image_div_callback; } /** * Setup the hooks for the Custom Background admin page. * * @since unknown */ function init() { if ( ! current_user_can('switch_themes') ) return; $page = add_theme_page(__('Custom Background'), __('Custom Background'), 'switch_themes', 'custom-background', array(&$this, 'admin_page')); add_action("admin_head-$page", array(&$this, 'take_action'), 50); if ( $this->admin_header_callback ) add_action("admin_head-$page", $this->admin_header_callback, 51); } /** * Get the current step. * * @since unknown * * @return int Current step */ function step() { if ( ! isset( $_GET['step'] ) ) return 1; $step = (int) $_GET['step']; if ( $step < 1 || 3 < $step ) $step = 1; return $step; } /** * Execute custom background modification. * * @since unknown */ function take_action() { if ( ! current_user_can('switch_themes') ) return; if ( isset($_POST['reset-background']) ) { check_admin_referer('custom-background'); remove_theme_mods(); } if ( isset($_POST['repeat-background']) ) { check_admin_referer('custom-background'); $repeat = $_POST['repeat-background'] ? true: false; set_theme_mod('background_repeat', $repeat); } elseif ( isset($_POST['save-background-options']) ) { set_theme_mod('background_repeat', false); } if ( isset($_POST['remove-background']) ) { check_admin_referer('custom-background'); set_theme_mod('background_image', ''); } } /** * Display first step of custom background image page. * * @since unknown */ function step_1() { if ( isset($_GET['updated']) && $_GET['updated'] ) { ?>
Visit your site to see how it looks.'), home_url()); ?>