$label ) { if ( null !== $label ) { $labels->$index = str_replace( [ 'Categories', 'Category', 'categories', 'category' ], [ 'Slides', 'Slides', 'slides', 'slide' ], $label ); } } return $labels; } /** * Runs on wp_loaded. * * @access public * @since 1.0.0 */ public function init_post_type() { register_post_type( 'slide', [ 'public' => true, 'has_archive' => false, 'rewrite' => [ 'slug' => 'slide', ], 'supports' => [ 'title', 'thumbnail' ], 'can_export' => true, 'hierarchical' => false, 'publicly_queryable' => false, 'exclude_from_search' => true, 'show_ui' => apply_filters( 'awb_role_manager_access_capability', true, 'slide' ), 'show_in_menu' => false, 'labels' => [ 'name' => _x( 'Avada Slides', 'Post Type General Name', 'fusion-core' ), 'singular_name' => _x( 'Avada Slide', 'Post Type Singular Name', 'fusion-core' ), 'menu_name' => __( 'Avada Slider', 'fusion-core' ), 'parent_item_colon' => __( 'Parent Slide:', 'fusion-core' ), 'all_items' => __( 'Add or Edit Slides', 'fusion-core' ), 'view_item' => __( 'View Slide', 'fusion-core' ), 'add_new_item' => __( 'Add New Slide', 'fusion-core' ), 'add_new' => __( 'Add New Slide', 'fusion-core' ), 'edit_item' => __( 'Edit Slide', 'fusion-core' ), 'update_item' => __( 'Update Slide', 'fusion-core' ), 'search_items' => __( 'Search Slide', 'fusion-core' ), 'not_found' => __( 'Not found', 'fusion-core' ), 'not_found_in_trash' => __( 'Not found in Trash', 'fusion-core' ), 'item_published' => __( 'Slide published.', 'fusion-core' ), 'item_published_privately' => __( 'Slide published privately.', 'fusion-core' ), 'item_reverted_to_draft' => __( 'Slide reverted to draft.', 'fusion-core' ), 'item_scheduled' => __( 'Slide scheduled.', 'fusion-core' ), 'item_updated' => __( 'Slide updated.', 'fusion-core' ), ], ] ); register_taxonomy( 'slide-page', 'slide', [ 'public' => true, 'hierarchical' => true, 'label' => 'Slider', 'query_var' => true, 'rewrite' => true, 'show_in_nav_menus' => false, 'show_ui' => true, 'show_tagcloud' => false, 'publicly_queryable' => false, 'labels' => [ 'name' => __( 'Avada Sliders', 'fusion-core' ), 'singular_name' => __( 'Avada Slider', 'fusion-core' ), 'menu_name' => __( 'Add or Edit Sliders', 'fusion-core' ), 'all_items' => __( 'All Sliders', 'fusion-core' ), 'parent_item_colon' => __( 'Parent Slider:', 'fusion-core' ), 'new_item_name' => __( 'New Slider Name', 'fusion-core' ), 'add_new_item' => __( 'Add Slider', 'fusion-core' ), 'edit_item' => __( 'Edit Slider', 'fusion-core' ), 'update_item' => __( 'Update Slider', 'fusion-core' ), 'separate_items_with_commas' => __( 'Separate sliders with commas', 'fusion-core' ), 'search_items' => __( 'Search Sliders', 'fusion-core' ), 'add_or_remove_items' => __( 'Add or remove sliders', 'fusion-core' ), 'choose_from_most_used' => __( 'Choose from the most used sliders', 'fusion-core' ), 'not_found' => __( 'Not Found', 'fusion-core' ), ], ] ); } /** * Runs on wp. * * @access public * @since 1.0.0 */ public function init() { if ( ! class_exists( 'Fusion' ) || ! class_exists( 'Fusion_Settings' ) ) { return; } global $fusion_library; $fusion_settings = awb_get_fusion_settings(); if ( ! $fusion_library ) { $fusion_library = Fusion::get_instance(); } $is_builder = ( function_exists( 'fusion_is_preview_frame' ) && fusion_is_preview_frame() ) || ( function_exists( 'fusion_is_builder_frame' ) && fusion_is_builder_frame() ); if ( $fusion_settings->get( 'status_fusion_slider' ) || $is_builder ) { // Check if header is enabled. if ( ! is_page_template( 'blank.php' ) && 'no' !== fusion_get_page_option( 'display_header', $fusion_library->get_page_id() ) ) { $dependencies = [ 'jquery', 'avada-header', 'modernizr', 'cssua', 'jquery-flexslider', 'fusion-flexslider', 'fusion-video-general', 'fusion-video-bg' ]; } else { $dependencies = [ 'jquery', 'modernizr', 'cssua', 'jquery-flexslider', 'fusion-flexslider', 'fusion-video-general', 'fusion-video-bg' ]; } if ( $fusion_settings->get( 'status_vimeo' ) ) { $dependencies[] = 'vimeo-player'; } if ( $fusion_settings->get( 'status_yt' ) ) { $dependencies[] = 'fusion-youtube'; } $dependencies[] = 'fusion-responsive-typography'; Fusion_Dynamic_JS::enqueue_script( 'avada-fusion-slider', FusionCore_Plugin::$js_folder_url . '/avada-fusion-slider.js', FusionCore_Plugin::$js_folder_path . '/avada-fusion-slider.js', $dependencies, FUSION_CORE_VERSION, true ); $c_page_id = $fusion_library->get_page_id(); $slider_position = fusion_get_option( 'slider_position' ); $mobile_header_opacity = 1; $header_opacity = 1; if ( class_exists( 'Avada_Helper' ) ) { $header_color = Avada_Helper::get_header_color( $c_page_id, false ); $header_opacity = 1 === Fusion_Color::new_color( $header_color )->alpha ? 0 : 1; $mobile_header_color = Avada_Helper::get_header_color( $c_page_id, true ); $mobile_header_opacity = 1 === Fusion_Color::new_color( $mobile_header_color )->alpha ? 0 : 1; } Fusion_Dynamic_JS::localize_script( 'avada-fusion-slider', 'avadaFusionSliderVars', [ 'side_header_break_point' => (int) $fusion_settings->get( 'side_header_break_point' ), 'slider_position' => ( $slider_position && 'default' !== $slider_position ) ? strtolower( $slider_position ) : strtolower( $fusion_settings->get( 'slider_position' ) ), 'header_transparency' => $header_opacity, 'mobile_header_transparency' => $mobile_header_opacity, 'header_position' => fusion_get_option( 'header_position' ), 'content_break_point' => (int) $fusion_settings->get( 'content_break_point' ), 'status_vimeo' => $fusion_settings->get( 'status_vimeo' ), ] ); } } /** * Removes the 'view' in the admin bar. * * @access public */ public function fusion_admin_bar_render() { global $wp_admin_bar, $typenow; if ( 'slide' === $typenow || 'themefusion_elastic' === $typenow ) { $wp_admin_bar->remove_menu( 'view' ); } } /** * Removes the 'view' link in taxonomy page. * * @access public * @param array $actions WordPress actions array for the taxonomy admin page. * @return array $actions */ public function remove_taxonomy_actions( $actions ) { global $typenow; if ( 'slide' === $typenow || 'themefusion_elastic' === $typenow ) { unset( $actions['view'] ); } return $actions; } /** * Enqueue Scripts and Styles * * @access public * @return void */ public function admin_init() { global $pagenow; $post_type = ''; if ( isset( $_GET['post'] ) && wp_unslash( $_GET['post'] ) ) { // phpcs:ignore WordPress.Security $post_type = get_post_type( wp_unslash( $_GET['post'] ) ); // phpcs:ignore WordPress.Security } if ( ( isset( $_GET['taxonomy'] ) && 'slide-page' === $_GET['taxonomy'] ) || ( isset( $_GET['post_type'] ) && 'slide' === $_GET['post_type'] ) || 'slide' === $post_type ) { // phpcs:ignore WordPress.Security wp_enqueue_script( 'fusion-slider', esc_url_raw( FusionCore_Plugin::$js_folder_url . '/fusion-slider.js' ), false, FUSION_CORE_VERSION, true ); } if ( isset( $_GET['page'] ) && 'avada_slider_export_import' === $_GET['page'] ) { // phpcs:ignore WordPress.Security $this->export_sliders(); } } /** * Adds the submenu. * * @access public */ public function admin_menu() { global $submenu; // Menu entry. add_submenu_page( 'avada', esc_html__( 'Avada Sliders', 'fusion-core' ), esc_html__( 'Sliders', 'fusion-core' ), apply_filters( 'awb_role_manager_access_capability', 'edit_posts', 'slide' ), 'avada_sliders', null, 9 ); add_submenu_page( 'avada', __( 'Export / Import', 'fusion-core' ), __( 'Export / Import', 'fusion-core' ), 'manage_options', 'avada_slider_export_import', [ $this, 'add_slider_import_export' ], 30 ); add_action( 'admin_print_styles', [ $this, 'add_styles' ] ); // Change menu links for admin role. if ( array_key_exists( 'avada', $submenu ) ) { foreach ( $submenu['avada'] as $key => $value ) { $k = array_search( 'avada_sliders', $value, true ); if ( $k ) { $submenu['avada'][ $key ][ $k ] = ( current_user_can( $submenu['avada'][ $key ][1] ) ) ? esc_url( admin_url( 'edit-tags.php?taxonomy=slide-page&post_type=slide' ) ) : ''; // phpcs:ignore WordPress.WP.GlobalVariablesOverride } } } elseif ( array_key_exists( 'avada_sliders', $submenu ) ) { // Change menu links for editor role. foreach ( $submenu['avada_sliders'] as $key => $value ) { $k = array_search( 'avada_sliders', $value, true ); if ( $k ) { $submenu['avada_sliders'][ $key ][ $k ] = ( current_user_can( $submenu['avada_sliders'][ $key ][1] ) ) ? esc_url( admin_url( 'edit-tags.php?taxonomy=slide-page&post_type=slide' ) ) : ''; // phpcs:ignore WordPress.WP.GlobalVariablesOverride } $k = array_search( 'avada_slides', $value, true ); if ( $k ) { $submenu['avada_sliders'][ $key ][ $k ] = ( current_user_can( $submenu['avada_sliders'][ $key ][1] ) ) ? esc_url( admin_url( 'edit.php?post_type=slide' ) ) : ''; // phpcs:ignore WordPress.WP.GlobalVariablesOverride } } } } /** * Adds the submenu. * * @access public * @since 5.0 * @param string $parent_file The menu parent file / page name. * @return string The changed parent file / page name. */ public function change_current_menu_item( $parent_file ) { global $submenu_file; $screen = get_current_screen(); if ( ( 'edit-slide-page' === $screen->id || 'edit-slide' === $screen->id || ( 'slide' === $screen->id && 'slide' === $screen->post_type ) || ( isset( $_GET['page'] ) && 'avada_slider_export_import' === $_GET['page'] ) ) && class_exists( 'Avada' ) ) { // phpcs:ignore WordPress.Security.NonceVerification $submenu_file = esc_url( admin_url( 'edit-tags.php?taxonomy=slide-page&post_type=slide' ) ); // phpcs:ignore WordPress.WP.GlobalVariablesOverride $parent_file = 'avada'; } return $parent_file; } /** * Add styles to the admin screen. * * @access public * @since 5.0 * @return void */ public function add_styles() { $screen = get_current_screen(); if ( ( 'edit-slide-page' === $screen->id || 'edit-slide' === $screen->id || ( 'slide' === $screen->id && 'slide' === $screen->post_type ) || ( isset( $_GET['page'] ) && 'avada_slider_export_import' === $_GET['page'] ) ) && class_exists( 'Avada' ) ) { // phpcs:ignore WordPress.Security.NonceVerification wp_enqueue_style( 'avada_admin_css', get_template_directory_uri() . '/assets/admin/css/avada-admin.css', [], AVADA_VERSION ); add_action( 'admin_footer', 'fusion_the_admin_font_async' ); } } /** * Add items to the Avada dashboard sticky menu. * * @access public * @since 5.0 * @param string $screen The current screen. * @return void */ public function add_avada_dashboard_sticky_menu_items( $screen ) { if ( current_user_can( apply_filters( 'awb_role_manager_access_capability', 'edit_posts', 'slide' ) ) ) : ?>
  • id || 'edit-slide' === $screen->id || ( 'slide' === $screen->id && 'slide' === $screen->post_type ) || ( isset( $_GET['page'] ) && 'avada_slider_export_import' === $_GET['page'] ) ) && class_exists( 'Avada' ) ) { // phpcs:ignore WordPress.Security.NonceVerification if ( 'edit-slide-page' === $screen->id ) { $current_screen = 'sliders'; $heading = __( 'Avada Sliders', 'fusion-core' ); $notice = sprintf( /* translators: %s: "Slides Page Link". */ esc_html__( 'To edit single slides, please go to the %s.', 'fusion-core' ), '' . esc_html__( 'Slides Page', 'fusion-core' ) . '' ); } elseif ( 'edit-slide' === $screen->id ) { $current_screen = 'slides'; $heading = __( 'Avada Slides', 'fusion-core' ); $notice = sprintf( /* translators: %s: "Slides Page Link". */ esc_html__( 'To edit sliders, please go to the %s.', 'fusion-core' ), '' . esc_html__( 'Sliders Page', 'fusion-core' ) . '' ); } elseif ( 'slide' === $screen->id && 'slide' === $screen->post_type ) { $current_screen = 'slide-edit'; } else { $current_screen = 'slider-export'; } Avada_Admin::get_admin_screens_header( $current_screen ); if ( ( 'edit-slide-page' === $screen->id && ! isset( $_GET['tag_ID'] ) ) || 'edit-slide' === $screen->id ) : // phpcs:ignore WordPress.Security.NonceVerification ?>

    id && 'slide' === $screen->post_type ) : Avada_Admin::get_admin_screens_footer( 'slide-edit' ); endif; } } /** * Adds the Avada admin footer. * * @access public * @since 5.0 * @return void */ public function get_admin_screens_footer() { $screen = get_current_screen(); if ( ( 'edit-slide-page' === $screen->id || 'edit-slide' === $screen->id ) && class_exists( 'Avada' ) ) { ?>