Electric Tree House (see right sidebar) to try it out yourself. See Plugin website for more details and customization options. Author: Eric Burger of Electric Tree House Version: 1.0 Author URI: http://www.electrictreehouse.com */ function widget_play_asteroid_init() { if ( !function_exists('register_sidebar_widget') || !function_exists('register_widget_control') ) return; function widget_play_asteroid_control($number) { $options = $newoptions = get_option('widget_play_asteroid'); if ( $_POST["play-asteroid-submit-$number"] ) { $newoptions[$number]['title'] = strip_tags(stripslashes($_POST["play-asteroid-title-$number"])); $newoptions[$number]['text'] = stripslashes($_POST["play-asteroid-text-$number"]); $newoptions[$number]['show'] = $_POST["play-asteroid-show-$number"]; $newoptions[$number]['slug'] = strip_tags(stripslashes($_POST["play-asteroid-slug-$number"])); if ( !current_user_can('unfiltered_html') ) $newoptions[$number]['text'] = stripslashes(wp_filter_post_kses($newoptions[$number]['text'])); } if ( $options != $newoptions ) { $options = $newoptions; update_option('widget_play_asteroid', $options); } $title = htmlspecialchars($options[$number]['title'], ENT_QUOTES); $text = htmlspecialchars($options[$number]['text'], ENT_QUOTES); $allSelected = $homeSelected = $postSelected = $postInCategorySelected = $pageSelected = $categorySelected = false; switch ($options[$number]['show']) { case "all": $allSelected = true; break; case "": $allSelected = true; break; case "home": $homeSelected = true; break; case "post": $postSelected = true; break; case "post_in_category": $postInCategorySelected = true; break; case "page": $pageSelected = true; break; case "category": $categorySelected = true; break; } ?>

Add a description so people know what they are clicking on. No one likes being surprised by a hidden ad or link. Add directions like: fly with the arrow keys and shoot with spacebar. Or add html code to include a picture. Though Erik and I are upstanding young people, have put a lot of work into this widget, and would appreciate the link, you can use the "Category" option to disable the link,

In Post In Category add one or more cat. IDs (not Slug or Title) comma separated!

" ?> " name="play-asteroid-submit-" value="1" /> "; $title ? print($before_title . $title . $after_title) : null; ?>'.$text); ?>

By Eric and Erik

"; echo $after_widget." "; break; case "home": if (is_home()) { echo $before_widget; echo "
"; $title ? print($before_title . $title . $after_title) : null; ?>'.$text); ?>

By Eric and Erik

"; echo $after_widget." "; } else { echo ""; } break; case "post": if (is_single($slug)) { echo $before_widget; echo "
"; $title ? print($before_title . $title . $after_title) : null; ?>'.$text); ?>

By Eric and Erik

"; echo $after_widget." "; } else { echo ""; } break; case "post_in_category": $PiC = explode(",",$slug); $InCategory = false; foreach($PiC as $CategoryID) { if(is_single() && in_category($CategoryID)){ $InCategory = true; } elseif (is_category($CategoryID)) { $InCategory = true; } } if ($InCategory) { echo $before_widget; echo "
"; $title ? print($before_title . $title . $after_title) : null; ?>'.$text); ?>

By Eric and Erik

"; echo $after_widget." "; } else { echo ""; } break; case "page": if (is_page($slug)) { echo $before_widget; echo "
"; $title ? print($before_title . $title . $after_title) : null; ?>'.$text); ?>

By Eric and Erik

"; echo $after_widget." "; } else { echo ""; } break; case "category": if (is_category($slug)) { echo $before_widget; echo "
"; $title ? print($before_title . $title . $after_title) : null; ?>'.$text); echo "
"; echo $after_widget." "; } else { echo ""; } break; } ?> 9 ) $number = 9; if ( $number < 1 ) $number = 1; $newoptions['number'] = $number; } if ( $options != $newoptions ) { $options = $newoptions; update_option('widget_play_asteroid', $options); widget_play_asteroid_register($options['number']); } } function widget_play_asteroid_page() { $options = $newoptions = get_option('widget_play_asteroid'); ?>

Asteroid Widget by Electric Tree House

9 ) $number = 9; for ($i = 1; $i <= 9; $i++) { $name = array('Asteroid Widget %s', null, $i); register_sidebar_widget($name, $i <= $number ? 'widget_play_asteroid' : /* unregister */ '', $i); register_widget_control($name, $i <= $number ? 'widget_play_asteroid_control' : /* unregister */ '', 530, 450, $i); } add_action('sidebar_admin_setup', 'widget_play_asteroid_setup'); add_action('sidebar_admin_page', 'widget_play_asteroid_page'); } // Delay plugin execution to ensure Dynamic Sidebar has a chance to load first widget_play_asteroid_register(); } // Tell Dynamic Sidebar about our new widget and its control add_action('plugins_loaded', 'widget_play_asteroid_init'); ?>