array('enabled'=> 0, 'text' => '', 'dont_show_home'=>0, 'dont_show_category'=>0, 'dont_show_archive'=>0), 'after_text' => array('enabled' => 0, 'text' => '', 'dont_show_home' => 0, 'dont_show_category'=>0, 'dont_show_archive'=>0), 'eval_php' => 0); update_option('wp_simple_insert_options', $arr); } function filter_the_post($content = '') { $options = get_option('wp_simple_insert_options'); $show_before = false; $show_after = false; if($options['before_text']['enabled'] == 1) { if(is_home() && is_front_page()) { if($options['before_text']['dont_show_home'] == 1) $show_before = false; else $show_before = true; } else if(is_category()) { if($options['before_text']['dont_show_category'] == 1) $show_before = false; else $show_before = true; } else if(is_archive()) { if($options['before_text']['dont_show_archive'] == 1) $show_before = false; else $show_before = true; } else $show_before = true; } if($options['after_text']['enabled'] == 1) { if(is_home() && is_front_page()) { if($options['after_text']['dont_show_home'] == 1) $show_after = false; else $show_after = true; } else if(is_category()) { if($options['after_text']['dont_show_category'] == 1) $show_after = false; else $show_after = true; } else if(is_archive()) { if($options['after_text']['dont_show_archive'] == 1) $show_after = false; else $show_after = true; } else $show_after = true; } $before_content = $options['before_text']['text']; $after_content = $options['after_text']['text']; $temp = $content; if($show_before && !empty($before_content)) { if(!$options['eval_php']) $temp = $before_content . $temp; else { ob_start(); eval('?>'.$before_content); $t = ob_get_contents(); ob_end_clean(); $temp = $t . $temp; } } if($show_after && !empty($after_content)) { if(!$options['eval_php']) $temp = $temp . $after_content; else { ob_start(); eval('?>'.$after_content); $t = ob_get_contents(); ob_end_clean(); $temp = $temp . $t; } } return $temp; } function add_admin_menu() { add_options_page('WPSimpleInsert Settings', 'WPSimpleInsert', 'administrator', basename(__FILE__), array('WPSimpleInsert', 'show_options_page')); } function options_init() { register_setting('wp_simple_insert_options', 'wp_simple_insert_options', array('WPSimpleInsert', 'validate_options')); add_settings_section('wp_simple_insert_section_before', 'Before Post Content', array('WPSimpleInsert', 'wp_simple_insert_section_before_cb'), __FILE__); add_settings_field('wp_simple_insert_before_text', 'Before Code:', array('WPSimpleInsert', 'settings_before_cb'), __FILE__, 'wp_simple_insert_section_before', array('type'=>'textarea')); add_settings_field('wp_simple_insert_before_text_dont_show_home', 'Hide from home page?', array('WPSimpleInsert', 'settings_before_cb'), __FILE__, 'wp_simple_insert_section_before', array('type'=>'checkbox', 'id'=>'wp_simple_insert_before_text_dont_show_home')); add_settings_field('wp_simple_insert_before_text_dont_show_category', 'Hide from category page?', array('WPSimpleInsert', 'settings_before_cb'), __FILE__, 'wp_simple_insert_section_before', array('type'=>'checkbox', 'id'=>'wp_simple_insert_before_text_dont_show_category')); add_settings_field('wp_simple_insert_before_text_dont_show_archive', 'Hide from archive page?', array('WPSimpleInsert', 'settings_before_cb'), __FILE__, 'wp_simple_insert_section_before', array('type'=>'checkbox', 'id'=>'wp_simple_insert_before_text_dont_show_archive')); add_settings_field('wp_simple_insert_before_text_enabled', 'Enabled', array('WPSimpleInsert', 'settings_before_cb'), __FILE__, 'wp_simple_insert_section_before', array('type'=>'button')); add_settings_section('wp_simple_insert_section_after', 'After Post Content', array('WPSimpleInsert', 'wp_simple_insert_section_after_cb'), __FILE__); add_settings_field('wp_simple_insert_after_text', 'Code:', array('WPSimpleInsert', 'settings_after_cb'), __FILE__, 'wp_simple_insert_section_after', array('type'=>'textarea')); add_settings_field('wp_simple_insert_after_text_dont_show_home', 'Hide from home page?', array('WPSimpleInsert', 'settings_after_cb'), __FILE__, 'wp_simple_insert_section_after', array('type'=>'checkbox', 'id'=>'wp_simple_insert_after_text_dont_show_home')); add_settings_field('wp_simple_insert_after_text_dont_show_category', 'Hide from category page?', array('WPSimpleInsert', 'settings_after_cb'), __FILE__, 'wp_simple_insert_section_after', array('type'=>'checkbox', 'id'=>'wp_simple_insert_after_text_dont_show_category')); add_settings_field('wp_simple_insert_after_text_dont_show_archive', 'Hide from archive page?', array('WPSimpleInsert', 'settings_after_cb'), __FILE__, 'wp_simple_insert_section_after', array('type'=>'checkbox', 'id'=>'wp_simple_insert_after_text_dont_show_archive')); add_settings_field('wp_simple_insert_after_text_enabled', 'Enabled', array('WPSimpleInsert', 'settings_after_cb'), __FILE__, 'wp_simple_insert_section_after', array('type'=>'button')); add_settings_section('wp_simple_insert_section_misc', 'Misc', array('WPSimpleInsert', 'wp_simple_insert_section_misc_cb'), __FILE__); add_settings_field('wp_simple_insert_eval_php', 'Evaluate PHP?', array('WPSimpleInsert', 'settings_misc_cb'), __FILE__, 'wp_simple_insert_section_misc', array('type'=>'eval-php')); } function settings_before_cb($args = array()) { $options = get_option('wp_simple_insert_options'); switch($args['type']) { case 'textarea': echo ""; break; case 'button': $val = (($options['before_text']['enabled']==0) || (empty($options['before_text']['enabled'])))?'Disabled':'Enabled'; ?> "/> /> /> /> ".$options['after_text']['text'].""; break; case 'button': $val = (($options['after_text']['enabled']==0) || (empty($options['after_text']['enabled'])))?'Disabled':'Enabled'; ?> "/> /> /> /> ' type='checkbox' onclick="toggleCheckbox(this)"/> Code to be inserted before post content

"; } function wp_simple_insert_section_after_cb($args = array()) { echo "

Code to be inserted after post content

"; } function wp_simple_insert_section_misc_cb() { echo "

Miscellaneous settings

"; } function show_options_page() { ?>

WPSimpleInsert

By: Bhaskar Kandiyal (bkandiyal@gmail.com)