%2$s', admin_url('admin.php?page=blockspare'), esc_html__('Patterns Library', 'blockspare')); array_unshift($links, $settings_link); $links['bspro'] = sprintf('%2$s', 'https://www.blockspare.com/', esc_html__('Get Blockspare Pro', 'blockspare')); return $links; } public function plugin_row_meta($plugin_meta, $plugin_file) { if (BLOCKSPARE_PLUGIN_BASE === $plugin_file) { $row_meta = [ 'starter' => '' . esc_html__('Demos', 'blockspare') . '', 'docs' => '' . esc_html__('Docs', 'blockspare') . '', 'video' => '' . esc_html__('All Themes & Plugins', 'blockspare') . '', 'support' => '' . esc_html__('Need Help?', 'blockspare') . '', ]; $plugin_meta = array_merge($plugin_meta, $row_meta); } return $plugin_meta; } public function add_dashboard_page() { // @see images/blockspare-icon.svg $svg = <<< SVG SVG; add_menu_page( __('Blockspare', 'blockspare'), // Page Title. __('Blockspare', 'blockspare'), // Menu Title. 'edit_posts', // Capability. 'blockspare', // Menu slug. array($this, 'blockspare_admin_dashboard'), // Action. 'data:image/svg+xml;base64,' . base64_encode($svg), // Blockspare icon. 25 ); // Our getting started page. add_submenu_page( 'blockspare', // Parent slug. __('Patterns Library', 'blockspare'), // Page title. __('Patterns Library', 'blockspare'), // Menu title. 'manage_options', // Capability. 'blockspare', // Menu slug. array($this, 'blockspare_admin_dashboard'), // Callback function. 1// Position ); add_submenu_page( 'blockspare', // Parent slug. __('My Patterns', 'blockspare'), // Page title. __('My Patterns', 'blockspare'), // Menu title. 'manage_options', // Capability. 'edit.php?post_type=bs_templates', // Menu slug. ); } public function enqueue_dashboard_script($hook) { wp_enqueue_style('blockspare-admin', BLOCKSPARE_PLUGIN_URL . 'admin/assets/css/style.css', '', ''); wp_enqueue_script('blockspare_dashboard_js', BLOCKSPARE_PLUGIN_URL . 'dist/block_admin_dashboard.js', array('react', 'react-dom', 'wp-components', 'wp-element', 'wp-api-fetch', 'wp-polyfill'), '1.0'); wp_enqueue_style('blockspare-admin-css', BLOCKSPARE_PLUGIN_URL . 'dist/style-block_admin_dashboard.css'); $blockspare_dashboard_logo = BLOCKSPARE_PLUGIN_URL . 'admin/assets/images/blockspare-logo.png'; wp_localize_script( 'blockspare_dashboard_js', 'blockspare_dashboard', array( 'logo' => $blockspare_dashboard_logo, "imagePath" => "https://raw.githubusercontent.com/afthemes/blockspare-demo-data/master/blocks/", "static_img" => BLOCKSPARE_PLUGIN_URL, 'newPageUrl' => admin_url('post-new.php?post_type=page&blockspare_create_block'), 'adminPath' => admin_url('post-new.php?post_type=page&blockspare_show_intro=true'), 'pluginVesion' => BLOCKSPARE_VERSION, ) ); } public function blockspare_admin_dashboard() { ?>