plugin_name = $plugin_name; $this->version = $version; $this->load_dependencies(); } /** * Load the required admin-specific dependencies. * * Include the following files that provide the admin-specific functionality * of this plugin: * * - `Footnotes_WYSIWYG`. Provides plugin integration with the WYSIWYG editor. * - `Footnotes_Layout_Settings`. Defines the plugin dashboard page(s). * * @since 2.8.0 * @access private */ private function load_dependencies() { /** * The class responsible for WYSIWYG editor integration. */ require_once plugin_dir_path( dirname( __FILE__ ) ) . 'admin/class-footnotes-wysiwyg.php'; /** * The class responsible for constructing the plugin dashboard page(s). */ require_once plugin_dir_path( dirname( __FILE__ ) ) . 'admin/layout/class-footnotes-layout-init.php'; new Footnotes_Layout_Init(); } /** * Register the stylesheets for the admin area. * * @since 2.8.0 */ public function enqueue_styles() { wp_enqueue_style( $this->plugin_name, plugin_dir_url( __FILE__ ) . 'css/settings' . ( ( PRODUCTION_ENV ) ? '.min' : '' ) . '.css', array(), ( PRODUCTION_ENV ) ? $this->version : filemtime( plugin_dir_path( dirname( __FILE__ ) ) . 'css/settings.css' ), 'all' ); } /** * Register the JavaScript for the admin area. * * @since 2.8.0 */ public function enqueue_scripts() { wp_enqueue_script( $this->plugin_name, plugin_dir_url( __FILE__ ) . 'js/wysiwyg-editor' . ( ( PRODUCTION_ENV ) ? '.min' : '' ) . '.js', array(), ( PRODUCTION_ENV ) ? $this->version : filemtime( plugin_dir_path( dirname( __FILE__ ) ) . 'js/wysiwyg-editor.js' ), false ); } /** * Appends the Plugin links for display in the dashboard Plugins page. * * @since 1.5.0 * @since 2.8.0 Moved into `Footnote_Admin` class. * @param string[] $links The default set of links to display. * @return string[] The full set of links to display. */ public function footnotes_action_links( array $links ): array { // Append link to the WordPress Plugin page. $links[] = sprintf( '%s', __( 'Support', 'footnotes' ) ); // Append link to the settings page. $links[] = sprintf( '%s', esc_url( admin_url( 'options-general.php?page=footnotes' ) ), __( 'Settings', 'footnotes' ) ); // Append link to the PayPal donate function. $links[] = sprintf( '%s', __( 'Donate', 'footnotes' ) ); return $links; } }