/** * Initialize the plugin by loading admin scripts & styles and adding a * settings page and menu. * * @since 7.0 */ private function __construct() { // Call variables from public plugin class. $plugin = Quick_Featured_Images_Admin::get_instance(); $this->plugin_name = $plugin->get_plugin_name(); $this->plugin_slug = $plugin->get_plugin_slug(); $this->page_slug = $this->plugin_slug . '-settings'; $this->parent_page_slug = $plugin->get_page_slug(); $this->plugin_version = $plugin->get_plugin_version(); $this->settings_db_slug = $plugin->get_settings_db_slug(); // Load admin style sheet and JavaScript. add_action('admin_enqueue_scripts', array($this, 'enqueue_admin_styles')); // Add the options page and menu item. add_action('admin_menu', array($this, 'add_plugin_admin_menu')); // Add an action link pointing to the options page. $plugin_basename = plugin_basename(plugin_dir_path(__DIR__) . $this->plugin_slug . '.php'); add_filter('plugin_action_links_' . $plugin_basename, array($this, 'add_action_links')); /* * Add registering options * */ add_action('admin_init', array($this, 'register_options')); }
/** * Initialize the plugin by loading admin scripts & styles and adding a * settings page and menu. * * @since 7.0 * * @updated 8.3.1: sanitized recognition of key names, fixed bug on displaying undesired columns * @updated 9.0: added column sort function */ private function __construct() { // Call variables from public plugin class. $plugin = Quick_Featured_Images_Admin::get_instance(); $this->plugin_name = $plugin->get_plugin_name(); $this->plugin_slug = $plugin->get_plugin_slug(); $this->plugin_version = $plugin->get_plugin_version(); $this->settings_db_slug = $plugin->get_settings_db_slug(); // add featured image columns if desired $add_column_function = array($this, 'add_thumbnail_column'); $display_column_function = array($this, 'display_thumbnail_in_column'); $add_sort_function = array($this, 'add_sortable_column'); // get current or default settings $this->stored_settings = get_option($this->settings_db_slug, array()); // add Featured Image column in desired posts lists foreach ($this->stored_settings as $key => $value) { if ('1' == $value) { if (preg_match('/^column_thumb_([a-z0-9_\\-]+)$/', $key, $matches)) { // make the following lines more readable $post_type = $matches[1]; // get the hook name for the columns filter $hook = sprintf('manage_%s_posts_columns', $post_type); // add a column to list of desired post type and // sanitizing: check with has_filter() to prevent multiple columns in a row if (!has_filter($hook, $add_column_function)) { add_filter($hook, $add_column_function); } // get the hook name for the sortable columns filter $hook = sprintf('manage_edit-%s_sortable_columns', $post_type); // add the column to list of sortable columns // sanitizing: check with has_filter() to prevent more than 1 call if (!has_filter($hook, $add_sort_function)) { add_filter($hook, $add_sort_function); } // get the hook name for the column edit action $hook = sprintf('manage_%s_posts_custom_column', $post_type); // add thumbnail in column per post // sanitizing: check with has_filter() to prevent multiple contents in a column if (!has_action($hook, $display_column_function)) { add_action($hook, $display_column_function, 10, 2); } } // if ( preg_match() ) } // if ( value == 1 ) } // foreach( stored_settings ) // load admin style sheet add_action('admin_enqueue_scripts', array($this, 'enqueue_admin_styles')); // print style for thumbnail column add_action('admin_head', array($this, 'display_thumbnail_column_style')); // define image column sort order add_filter('pre_get_posts', array($this, 'sort_column_by_image_id')); }
/** * Initialize the plugin by loading admin scripts & styles and adding a * settings page and menu. * * @since 8.0 */ private function __construct() { // Call variables from public plugin class. $plugin = Quick_Featured_Images_Admin::get_instance(); $this->plugin_name = $plugin->get_plugin_name(); $this->plugin_slug = $plugin->get_plugin_slug(); $this->page_slug = $this->plugin_slug . '-defaults'; $this->parent_page_slug = $plugin->get_page_slug(); $this->plugin_version = $plugin->get_plugin_version(); // Load admin style sheet and JavaScript. add_action('admin_enqueue_scripts', array($this, 'enqueue_admin_styles')); add_action('admin_enqueue_scripts', array($this, 'enqueue_admin_scripts')); // Add the options page and menu item. add_action('admin_menu', array($this, 'add_plugin_admin_menu')); // Auto set featured image on saving a post add_action('save_post', array($this, 'add_featured_image'), 10, 3); /* // check whether the query parameter 'qfi_notice' is in the URL; if yes, show admin notice if ( isset( $_REQUEST[ 'qfi_notice' ] ) ) { add_action( 'admin_notices', array( $this, 'display_qfi_notice' ) ); } */ }
/** * Initialize the plugin by loading admin scripts & styles and adding a * settings page and menu. * * @access private * @since 1.0.0 */ private function __construct() { // Call some values from public plugin class. $plugin = Quick_Featured_Images_Admin::get_instance(); $this->plugin_name = $plugin->get_plugin_name(); $this->plugin_slug = $plugin->get_plugin_slug(); $this->page_slug = $this->plugin_slug . '-tools'; $this->parent_page_slug = $plugin->get_page_slug(); $this->plugin_version = $plugin->get_plugin_version(); // Load admin style sheet and JavaScript. add_action('admin_enqueue_scripts', array($this, 'enqueue_admin_styles')); add_action('admin_enqueue_scripts', array($this, 'enqueue_admin_scripts')); // Add the admin page and menu item. add_action('admin_menu', array($this, 'add_plugin_admin_menu')); // Add 'Bulk set' link in rows of media library list add_filter('media_row_actions', array(&$this, 'add_media_row_action'), 10, 2); }
/** * Initialize the plugin by loading admin scripts & styles and adding a * settings page and menu. * * @since 8.0 */ private function __construct() { // Call variables from public plugin class. $plugin = Quick_Featured_Images_Admin::get_instance(); $this->plugin_name = $plugin->get_plugin_name(); $this->plugin_slug = $plugin->get_plugin_slug(); $this->page_slug = $this->plugin_slug . '-defaults'; $this->parent_page_slug = $plugin->get_page_slug(); $this->plugin_version = $plugin->get_plugin_version(); // Load admin style sheet and JavaScript. add_action('admin_enqueue_scripts', array($this, 'enqueue_admin_styles')); add_action('admin_enqueue_scripts', array($this, 'enqueue_admin_scripts')); // Add the options page and menu item. add_action('admin_menu', array($this, 'add_plugin_admin_menu')); // Auto set featured image on saving a post add_action('save_post', array($this, 'add_featured_image'), 10, 3); // Auto delete rule if an image is deleted in the media library add_action('delete_attachment', array($this, 'delete_rules_by_thumb_id')); }