Current Path : /home/theafprt/fnf.group/wp-content/plugins/salient-home-slider/includes/frontend/ |
Current File : //home/theafprt/fnf.group/wp-content/plugins/salient-home-slider/includes/frontend/helpers.php |
<?php // Exit if accessed directly if ( ! defined( 'ABSPATH' ) ) { exit; } /** * Edit columns for Home Slider * * @since 1.0 */ add_filter( 'manage_edit-home_slider_columns', 'edit_columns_home_slider' ); if( !function_exists('edit_columns_home_slider') ) { function edit_columns_home_slider( $columns ) { $column_thumbnail = array( 'thumbnail' => 'Thumbnail' ); $column_caption = array( 'caption' => 'Caption' ); $columns = array_slice( $columns, 0, 1, true ) + $column_thumbnail + array_slice( $columns, 1, null, true ); $columns = array_slice( $columns, 0, 2, true ) + $column_caption + array_slice( $columns, 2, null, true ); return $columns; } } add_action( 'manage_home_slider_posts_custom_column', 'home_slider_custom_columns', 10, 2 ); /** * Add content to edit columns for Home Slider * * @since 1.0 */ if( !function_exists('home_slider_custom_columns') ) { function home_slider_custom_columns( $portfolio_columns, $post_id ) { switch ( $portfolio_columns ) { case 'thumbnail': $thumbnail = get_post_meta( $post_id, '_nectar_slider_image', true ); if ( ! empty( $thumbnail ) ) { echo '<a href="' . esc_url( get_admin_url() ) . 'post.php?post=' . $post_id . '&action=edit"><img class="slider-thumb" src="' . $thumbnail . '" /></a>'; } else { echo '<a href="' . esc_url( get_admin_url() ) . 'post.php?post=' . $post_id . '&action=edit"><img class="slider-thumb" src="' . SALIENT_HOME_SLIDER_PLUGIN_PATH . '/img/slider-default-thumb.jpg" /></a>' . '<strong><a class="row-title" href="' . esc_url( get_admin_url() ) . 'post.php?post=' . $post_id . '&action=edit">No image added yet</a></strong>'; } break; case 'caption': $caption = get_post_meta( $post_id, '_nectar_slider_caption', true ); echo wp_kses_post( $caption ); break; default: break; } } } add_action( 'admin_menu', 'nectar_home_slider_ordering' ); /** * Add Home Slider "order" submenu. * * @since 1.0 */ if( !function_exists('nectar_home_slider_ordering') ) { function nectar_home_slider_ordering() { add_submenu_page( 'edit.php?post_type=home_slider', 'Order Slides', 'Order', 'edit_pages', 'slide-order', 'nectar_home_slider_order_page' ); } } /** * Home Slider "order" page content * * @since 1.0 */ if( !function_exists('nectar_home_slider_order_page') ) { function nectar_home_slider_order_page(){ ?> <div class="wrap"> <h2><?php echo esc_html__( 'Sort Slides', 'salient-home-slider' ); ?></h2> <p><?php echo esc_html__( 'Simply drag the slide up or down and they will be saved in that order.', 'salient-home-slider' ); ?></p> <?php $slides = new WP_Query( array( 'post_type' => 'home_slider', 'posts_per_page' => -1, 'order' => 'ASC', 'orderby' => 'menu_order', ) ); ?> <?php if ( $slides->have_posts() ) : ?> <?php wp_nonce_field( basename( __FILE__ ), 'nectar_meta_box_nonce' ); ?> <table class="wp-list-table widefat fixed posts" id="sortable-table"> <thead> <tr> <th class="column-order"><?php echo esc_html__( 'Order', 'salient-home-slider' ); ?></th> <th class="manage-column column-thumbnail"><?php echo esc_html__( 'Image', 'salient-home-slider' ); ?></th> <th class="manage-column column-caption"><?php echo esc_html__( 'Caption', 'salient-home-slider' ); ?></th> </tr> </thead> <tbody data-post-type="home_slider"> <?php while ( $slides->have_posts() ) : $slides->the_post(); ?> <tr id="post-<?php the_ID(); ?>"> <td class="column-order"><img src="<?php echo SALIENT_HOME_SLIDER_PLUGIN_PATH . '/img/sortable.png'; ?>" alt="Move Icon" width="25" height="25" class="" /></td> <td class="thumbnail column-thumbnail"> <?php global $post; $thumbnail = get_post_meta( $post->ID, '_nectar_slider_image', true ); if ( ! empty( $thumbnail ) ) { echo '<img class="slider-thumb" src="' . $thumbnail . '" />'; } else { echo '<img class="slider-thumb" src="' . SALIENT_HOME_SLIDER_PLUGIN_PATH . '/img/slider-default-thumb.jpg" />' . '<strong>No image added yet</strong>'; } ?> </td> <td class="caption column-caption"> <?php $caption = get_post_meta( $post->ID, '_nectar_slider_caption', true ); echo wp_kses_post( $caption ); ?> </td> </tr> <?php endwhile; ?> </tbody> <tfoot> <tr> <th class="column-order"><?php echo esc_html__( 'Order', 'salient-home-slider' ); ?></th> <th class="manage-column column-thumbnail"><?php echo esc_html__( 'Image', 'salient-home-slider' ); ?></th> <th class="manage-column column-caption"><?php echo esc_html__( 'Caption', 'salient-home-slider' ); ?></th> </tr> </tfoot> </table> <?php else : ?> <p><?php echo esc_html__('No slides found, why not', 'salient-home-slider') . ' <a href="' . esc_url( admin_url('post-new.php?post_type=home_slider') ) .'">' . esc_html__('create one?', 'salient-home-slider') .'</a>'; ?></p> <?php endif; ?> <?php wp_reset_postdata(); ?> </div><!-- .wrap --> <?php } } add_action( 'admin_enqueue_scripts', 'home_slider_enqueue_scripts' ); /** * Home Slider enqueue admin assets. * * @since 1.0 */ if( !function_exists('home_slider_enqueue_scripts') ) { function home_slider_enqueue_scripts() { global $typenow; if ( 'home_slider' === $typenow ) { wp_enqueue_script( 'jquery-ui-sortable' ); wp_enqueue_script( 'nectar-reorder', SALIENT_HOME_SLIDER_PLUGIN_PATH . '/includes/assets/js/nectar-reorder.js' ); } wp_register_script( 'chosen', SALIENT_HOME_SLIDER_PLUGIN_PATH . '/includes/assets/js/chosen/chosen.jquery.min.js', array( 'jquery' ), '8.0.1', true ); wp_register_style( 'chosen', SALIENT_HOME_SLIDER_PLUGIN_PATH . '/includes/assets/css/chosen/chosen.css', array(), '8.0.1', 'all' ); wp_enqueue_style( 'chosen' ); wp_enqueue_script( 'chosen' ); } } add_action( 'wp_ajax_nectar_update_slide_order', 'nectar_update_slide_order' ); /** * Home Slider update order callback. * * @since 1.0 */ if( !function_exists('nectar_update_slide_order') ) { function nectar_update_slide_order() { global $wpdb; $post_type = sanitize_text_field( $_POST['postType'] ); $order = isset( $_POST['order'] ) ? (array) $_POST['order'] : array(); $order = array_map( 'esc_attr', $order ); if ( ! isset( $_POST['nectar_meta_box_nonce'] ) || ! wp_verify_nonce( $_POST['nectar_meta_box_nonce'], basename( __FILE__ ) ) ) { return; } foreach ( $order as $menu_order => $post_id ) { $post_id = intval( str_ireplace( 'post-', '', $post_id ) ); $menu_order = intval( $menu_order ); wp_update_post( array( 'ID' => stripslashes( htmlspecialchars( $post_id ) ), 'menu_order' => stripslashes( htmlspecialchars( $menu_order ) ), ) ); } die( '1' ); } } /** * set the Home Slider order in admin correctly. * * @since 1.0 */ if( !function_exists('set_home_slider_admin_order') ) { function set_home_slider_admin_order( $wp_query ) { $post_type = ( isset( $wp_query->query['post_type'] ) ) ? $wp_query->query['post_type'] : ''; if ( $post_type === 'home_slider' ) { $wp_query->set( 'orderby', 'menu_order' ); $wp_query->set( 'order', 'ASC' ); } } } if ( is_admin() ) { add_filter( 'pre_get_posts', 'set_home_slider_admin_order' ); }