file = $file; $this->url = plugin_dir_url( $this->file ); $this->path = plugin_dir_path( $this->file ); $this->basename = plugin_basename( $this->file ); } /** * Loads the class * * @uses ACW_Recent_Comments::load_widget() * @uses ACW_Recent_Comments::load_admin_scripts() * * @access public * * @since 0.1.0 */ public function init() { $this->load_widget(); $this->load_admin_scripts(); } /** * Loads the Comment Widget * * @uses ACW_Recent_Comments::register_widget() * * @access public * * @since 0.1.0 */ public function load_widget() { add_action( 'widgets_init', array( $this, 'register_widget' ) ); } /** * Registers the Comment Widget * * @uses WordPress\register_widget() * * @access public * * @since 0.1.0 */ public function register_widget() { register_widget( 'Widget_ACW_Recent_Comments' ); } /** * Loads js/css admin scripts * * @access public * * @since 1.0 * * @return void */ public function load_admin_scripts() { add_action( 'admin_enqueue_scripts', array( $this, 'admin_scripts' ) ); add_action( 'customize_controls_enqueue_scripts', array( $this, 'admin_scripts' ) ); add_action( 'admin_head', array( $this, 'admin_styles' ) ); add_action( 'customize_controls_print_styles', array( $this, 'admin_styles' ) ); } /** * Loads js admin scripts * * @access public * * @since 1.0 * * @return void */ public function admin_scripts( $hook ) { global $pagenow; $enqueue = false; if( 'customize.php' == $pagenow || 'widgets.php' == $pagenow || 'widgets.php' == $hook ) { $enqueue = true; } if ( ! $enqueue ) { return; } wp_enqueue_script( 'acw-scripts', $this->url . 'js/admin.js', array( 'jquery' ), '', true ); } /** * Prints out css styles in admin head * * Note: Only loads on edit-tags.php * * @access public * * @since 1.0 * * @return void */ public function admin_styles() { ?>