%PDF- %PDF-
Direktori : /var/www/hudvard.eco-n-tech.co.uk/wp-content/themes/jupiter/framework/helpers/ |
Current File : /var/www/hudvard.eco-n-tech.co.uk/wp-content/themes/jupiter/framework/helpers/load-more.php |
<?php if ( ! defined( 'THEME_FRAMEWORK' ) ) { exit( 'No direct script access allowed' ); } /** * Class to get loop items pased on the paged parameter * * @author Bob Ulusoy * @copyright Artbees LTD (c) * @link http://artbees.net * @version 5.0 * @package artbees */ class Mk_Load_More { function __construct() { add_action( 'wp_ajax_nopriv_mk_load_more', array( &$this, 'get_loop', ) ); add_action( 'wp_ajax_mk_load_more', array( &$this, 'get_loop', ) ); } public function get_loop() { $content = ''; check_ajax_referer( 'mk-load-more', 'safe_load_more' ); if ( method_exists( 'WPBMap', 'addAllMappedShortcodes' ) ) { WPBMap::addAllMappedShortcodes(); } $query = isset( $_REQUEST['query'] ) ? json_decode( mk_decode( $_REQUEST['query'] ), true ) : false; $atts = isset( $_REQUEST['atts'] ) ? json_decode( mk_decode( $_REQUEST['atts'] ), true ) : false; $loop_iterator = isset( $_REQUEST['loop_iterator'] ) ? $_REQUEST['loop_iterator'] : 0; if ( isset( $_REQUEST['term'] ) ) { $query['categories'] = ! empty( $_REQUEST['term'] ) ? $_REQUEST['term'] : false; } if ( isset( $_REQUEST['author'] ) ) { $query['author'] = ! empty( $_REQUEST['author'] ) ? $_REQUEST['author'] : false; } if ( isset( $_REQUEST['posts'] ) ) { $query['post__in'] = ! empty( $_REQUEST['posts'] ) ? explode( ',', $_REQUEST['posts'] ) : false; } $query['post_status'] = 'publish'; $query['paged'] = isset( $_REQUEST['paged'] ) ? $_REQUEST['paged'] : false; $offset = $query['offset']; $loaded_posts = ! empty( $_REQUEST['loaded_posts'] ) ? $_REQUEST['loaded_posts'] : array(); /** * Fix AM-2852 * * Send query option empty 'post__not_in' caused an issue on * WP_Query call. Just send it if the $loaded_posts is not * empty. * * @since 6.0.3 */ if ( ! empty( $loaded_posts ) ) { $query['post__not_in'] = $loaded_posts; } $query = mk_wp_query( $query ); $r = $query['wp_query']; $atts['i'] = $loop_iterator; if ( $query && $atts ) { if ( $r->have_posts() ) : while ( $r->have_posts() ) : $r->the_post(); $loaded_posts[] = $r->post->ID; $content .= mk_get_shortcode_view( $atts['shortcode_name'], 'loop-styles/' . $atts['style'], true, $atts ); $atts['i']++; endwhile; endif; } // If there is no posts_in and loaded posts are not empty, return the actual found posts if ( empty( $_REQUEST['posts'] ) && ! empty( $_REQUEST['loaded_posts'] ) ) { $found_posts = $r->found_posts - $r->post_count - $offset; } echo json_encode( array( 'i' => $atts['i'], 'maxPages' => $r->max_num_pages, 'loaded_posts' => $loaded_posts, 'found_posts' => $found_posts, 'content' => $content, ) ); wp_die(); } } new Mk_Load_More();