123 lines
4.4 KiB
PHP
123 lines
4.4 KiB
PHP
|
<?php
|
||
|
namespace THINKAI\Includes\Classes;
|
||
|
|
||
|
class Ajax {
|
||
|
|
||
|
function actions() {
|
||
|
add_action( 'wp_ajax_thinkai_ajax', array( $this, 'ajax_handler' ) );
|
||
|
add_action( 'wp_ajax_nopriv_thinkai_ajax', array( $this, 'ajax_handler' ) );
|
||
|
}
|
||
|
|
||
|
function ajax_handler() {
|
||
|
|
||
|
$method = thinkai_set( $_REQUEST, 'subaction' );
|
||
|
if ( method_exists( $this, $method ) ) {
|
||
|
$this->$method();
|
||
|
}
|
||
|
exit;
|
||
|
|
||
|
}
|
||
|
|
||
|
function thinkai_project_loadmore() {
|
||
|
$allowed_html = wp_kses_allowed_html( 'post' );
|
||
|
if ( class_exists( 'Douens_Resizer' ) ) {
|
||
|
$img_obj = new \Thinkai_Resizer();
|
||
|
}
|
||
|
$args = thinkai_set( $_POST, 'query' );
|
||
|
if ( ! empty( $args['paged'] ) AND ! empty( $args['posts_per_page'] ) AND ! empty( $args['order'] ) ) {
|
||
|
$args['paged'] = $args['paged'] + 1;
|
||
|
$args['post_type'] = 'project';
|
||
|
$query = new \WP_Query( $args );
|
||
|
if ( $query->have_posts() ) {
|
||
|
$count = 0;
|
||
|
ob_start();
|
||
|
while ( $query->have_posts() ) {
|
||
|
$query->the_post();
|
||
|
if ( $count == 0 ) {
|
||
|
$anim = array( 4, 5 );
|
||
|
} else {
|
||
|
$anim = array( 6, 5 );
|
||
|
}
|
||
|
?>
|
||
|
<div class="col-md-6 col-sm-12 col-lg-6 wow zoomIn" data-wow-delay=".<?php echo esc_attr( $anim[0] ); ?>s" data-wow-duration=".<?php echo esc_attr( $anim[1] ); ?>s">
|
||
|
<div class="portfolio-item">
|
||
|
<?php echo wp_kses( $img_obj->resize( wp_get_attachment_url( get_post_thumbnail_id(), 'full' ), 585, 420, true ), $allowed_html ); ?>
|
||
|
<div class="portfolio-cap">
|
||
|
<h2><a href="<?php the_permalink(); ?>" title="<?php the_title_attribute() ?>"><?php the_title(); ?></a></h2>
|
||
|
<span><?php the_terms( get_the_ID(), 'project_cat', '', ', ', '' ); ?></span>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
<?php
|
||
|
if ( $count == 1 ) {
|
||
|
$count = - 1;
|
||
|
}
|
||
|
$count ++;
|
||
|
}
|
||
|
wp_reset_postdata();
|
||
|
$output = ob_get_clean();
|
||
|
$button = '<a class="loadmore-btn" href="javascript:void(0)" data-attr=\'' . json_encode($args) . '\' ><i class="flaticon-load theme-bg"></i>' . esc_html__( "Load More", "thinkai" ) . '</a>';
|
||
|
wp_send_json( [
|
||
|
'post' => $output,
|
||
|
'button' => $button,
|
||
|
] );
|
||
|
} else {
|
||
|
wp_reset_postdata();
|
||
|
wp_send_json( [ 'button' => '<a class="loadmore-btn" href="javascript:void(0)"><i class="flaticon-load theme-bg"></i>' . esc_html__( "No More Post", "thinkai" ) . '</a>' ] );
|
||
|
}
|
||
|
exit;
|
||
|
} else {
|
||
|
wp_send_json( [ 'button' => '<a class="loadmore-btn" href="javascript:void(0)"><i class="flaticon-load theme-bg"></i>' . esc_html__( "No More Post", "thinkai" ) . '</a>' ] );
|
||
|
}
|
||
|
exit;
|
||
|
}
|
||
|
|
||
|
function thinkai_project_loadmore2() {
|
||
|
if ( class_exists( 'Thinkai_Resizer' ) ) {
|
||
|
$img_obj = new \Thinkai_Resizer();
|
||
|
}
|
||
|
$args = thinkai_set( $_POST, 'query' );
|
||
|
$args['post_type'] = 'project';
|
||
|
$query = new \WP_Query( $args );
|
||
|
if ( $query->have_posts() ) {
|
||
|
$count = 0;
|
||
|
ob_start();
|
||
|
while ( $query->have_posts() ) {
|
||
|
$query->the_post();
|
||
|
if ( $count == 0 ) {
|
||
|
$anim = 8;
|
||
|
} elseif ( $count == 1 ) {
|
||
|
$anim = 1;
|
||
|
} else {
|
||
|
$anim = '1.2';
|
||
|
}
|
||
|
?>
|
||
|
<div class="col-md-4 col-sm-6 col-lg-4 fltr-itm wow zoomIn " data-wow-delay=".<?php echo esc_attr( $anim ); ?>s" data-wow-duration=".5s">
|
||
|
<div class="portfolio-item2">
|
||
|
<a href="<?php the_permalink(); ?>" data-fancybox="gallery">
|
||
|
<?php echo wp_kses( $img_obj->resize( wp_get_attachment_url( get_post_thumbnail_id( get_the_ID() ), 'full' ), 357, 428, true ), $allowed_html ); ?>
|
||
|
</a>
|
||
|
<h4><a href="<?php the_permalink(); ?>" title="<?php the_title_attribute() ?>"><?php the_title(); ?></a></h4>
|
||
|
</div>
|
||
|
</div>
|
||
|
<?php
|
||
|
if ( $count == 2 ) {
|
||
|
$count = - 1;
|
||
|
}
|
||
|
$count ++;
|
||
|
}
|
||
|
wp_reset_postdata();
|
||
|
$output = ob_get_clean();
|
||
|
$button = '<a class="loadmore-btn" href="javascript:void(0)" data-offset="' . ( thinkai_set( $args, 'offset' ) + thinkai_set( $args, 'showposts' ) ) . '" data-order="' . thinkai_set( $args, 'order' ) . '" data-orderby="' . thinkai_set( $args, 'orderby' ) . '" data-count="' . thinkai_set( $args, 'showposts' ) . '"><i class="flaticon-load theme-bg"></i>' . esc_html__( "Load More", "thinkai" ) . '</a>';
|
||
|
wp_send_json( [
|
||
|
'post' => $output,
|
||
|
'button' => $button,
|
||
|
] );
|
||
|
} else {
|
||
|
wp_send_json( [ 'button' => $button = '<a class="loadmore-btn" href="javascript:void(0)"><i class="flaticon-load theme-bg"></i>' . esc_html__( "No More Post", "thinkai" ) . '</a>' ] );
|
||
|
}
|
||
|
exit;
|
||
|
}
|
||
|
|
||
|
}
|