name = 'Ads after first paragraph'; $this->section = 'fiAddSection'; $this->option = 'fiAddOptions'; add_action('admin_menu', array($this, 'fiAdd_plugin_setup_menu')); add_action('wp_enqueue_scripts', array($this, 'fiAddLeftscript')); add_action("admin_init", array($this, "fiAdd_display_admin_panel_fields")); add_filter('the_content', array($this, 'add_code_inside_post_contents'), 999, 1); add_action('the_content', array($this, 'right_left_front_end'), 9, 1); add_filter('plugin_action_links_' . plugin_basename(__FILE__), array($this, 'first_ads_configuration_link')); } /** * Ads after first paragraph Right and Left ads added in content callback function. * @param mix $content * @return mix */ public function right_left_front_end($content) { if (is_single()) { include(FI_ADD_PATH . "frontend-add.php"); } return $content; } /** * Ads after first paragraph front-end scripts callback function. */ public function fiAddLeftscript() { wp_enqueue_style('fiaddcss', FI_ADD_URL . 'assets/css/fiadd.css'); } /** * Apply the_content hook for filter the_content data callback function. * @param string $content $content WordPress the_content * @return string Ads embed the_content. */ public function add_code_inside_post_contents($content) { if (is_single()) { $ads_code = get_option('fiAdd_adsID'); $keyword = "
"; $position = strpos($content, $keyword) + strlen($keyword); if($position != 4){ return substr_replace($content, PHP_EOL . $ads_code, $position , 0); }else{ return $content .= $ads_code; } } return $content; } /** * Ads after first paragraph setup menu item inside Admin sidebar callback function. * @global type $user_ID */ public function fiAdd_plugin_setup_menu() { global $user_ID; $title = apply_filters('fiAdd_menu_title', $this->name); $capability = apply_filters('fiAdd_capability', 'edit_others_posts'); $page = add_menu_page($title, $title, $capability, 'fiAdd', array($this, 'fiAdd_admin_page'), FI_ADD_URL . "assets/images/fiAdd_icon.png", 9502); add_action('load-' . $page, array($this, 'fiAdd_help_tab')); } /** * Ads after first paragraph Setting page section group and option group registration callback function. */ public function fiAdd_display_admin_panel_fields() { add_settings_section($this->section, $this->name . " Settings", null, $this->option); add_settings_field("fiAdd_adsID", "Ads after first paragraph Code", array($this, "display_adsID_setting"), $this->option, $this->section); add_settings_field("fiAdd_adsLeftID", "Ads in Left sidebar", array($this, "display_adsLeftID_setting"), $this->option, $this->section); add_settings_field("fiAdd_adsRightID", "Ads in Right sidebar", array($this, "display_adsRightID_setting"), $this->option, $this->section); register_setting($this->section, "fiAdd_adsID"); register_setting($this->section, "fiAdd_adsLeftID"); register_setting($this->section, "fiAdd_adsRightID"); } /** * Ads after first paragraph configuration link create in plugin manager list callback function. * @param array $links * @return array $links */ public function first_ads_configuration_link($links) { $links[] = 'Configure'; return $links; } /** * Ads after first paragraph Setting section box generate for First Paragraph ads callback function. */ public function display_adsID_setting() { ?>Add Ads Javascript code from your Ads Account. Your Ads will show after first paragraph of your post.