reza_yki 103 ارسال شده در اسفند 94 گزارش بازنشر ارسال شده در اسفند 94 (ویرایش شده) سلام ب تمامی اساتید بنده یه کد نوشتم که مطالب رو به صورت ای جکس لود می کنه مشکلی که دارم اینه که وقتی تعداد نمایش رو بیش از 1 می زنم بعد از اتمام مطالب و به انتها رسیدن مطالب مطلب به صورت تکراری لود میشه کد های فایل js بنده jQuery(document).ready(function ($) { $(document).on('click','#load-more-link',function(event){ event.preventDefault(); var $this = $(this); $this.text('در حال بارگذاری ...'); var $container = $('.box-content'); var $page = parseInt($this.data('page')); $.ajax({ url : data.ajax_url, type:'post', dataType:'json', data:{ action:'load_more_content', page : $page }, //beforeSend:function(){ // var $container = $('.box-content').css('display','none'); // $($container).fadeIn(600) //}, success:function(response , data){ var $data = $(data); $data.hide(); $container.append($data); $data.fadeIn(500); if( parseInt(response.count) > 0){ $this.parent().before(response.content); $this.data('page',parseInt($page+1)); } $this.text('مطالب بیشتر'); if( (response.count) <= 0){ $this.text('مطلبی وجود ندارد'); } }, error:function(){} }); }); //// }); کد فایل php بنده: add_action('wp_ajax_load_more_content','load_more_content'); add_action('wp_ajax_nopriv_load_more_content','load_more_content'); function load_more_content(){ $page = intval($_POST['page']); if($page){ $posts_per_page = 1; $offset = ($page - 1) * $posts_per_page; //$ppg = get_option('posts_per_page'); $load_more_args = array( 'post_type' => array('post','download'), 'offset' => $offset, 'posts_per_page' => $posts_per_page ); $load_more_query = new WP_Query($load_more_args); $output_html = ''; if($load_more_query->have_posts()): while($load_more_query->have_posts()):$load_more_query->the_post(); //get_template_part('loops/loop-main'); $output_html.= '<div class="box-content">'; $output_html.= '<div class="box-img-posts">'; $output_html .= get_the_post_thumbnail($load_more_query->post->ID,'main-thumbnails'); $output_html.= ' <a href="'. get_the_permalink().'"><div class="hover-box tran-2s"></div>'; $output_html.= ' <h2 class="post-title txt-shadow">'; $output_html .= get_the_title(); $output_html.= '</h2></a></div>'; $output_html.= '<!--start meta--><div class="box-content-meta">'; $output_html.= '<span class="meta-posts"><i class="fa fa-calendar-o"></i>'; $output_html.= get_the_date('d F Y', $load_more_query->post->ID) ; $output_html.= '</span>'; $output_html.= '<span class="meta-posts"><i class="fa fa-eye"></i>'.get_post_views (get_the_ID()).'</span> '; $output_html.= '<span class="meta-posts"><i class="fa fa-comments"></i>'; $output_html.= get_comments_number(get_the_ID()); $output_html.= '</span>'; $output_html.= '<span class="meta-posts"><a href="#" data-pid="'. get_the_ID().'" class="like-post"><i class="fa fa-thumbs-up"></i><span>'.get_post_likes(get_the_ID()).'</span></a></span></div>'; $output_html.= '<div class="excerpt"><!--end meta--><!--start excerpt-->'; $output_html.= get_the_excerpt() ; $output_html.= '</div> </div><!--end excerpt-->'; endwhile; endif; $count = count($load_more_query); wp_reset_postdata(); $result = array(); $result['count'] = $count; $result['content'] = $output_html; wp_die(json_encode($result)); } wp_die(json_decode(array('count'=> 0,'error'=>1))); } کد content بنده: <?php $ppg = 5; $all_posts_args = array( 'posts_per_page' => $ppg, ); $all_posts = new WP_Query($all_posts_args); if($all_posts->have_posts()) :?> <?php while($all_posts->have_posts()):$all_posts->the_post(); ?> <div class="box-content" > <div class="box-img-posts"> <?php the_post_thumbnail('main-thumbnails'); ?> <a href="<?php the_permalink(); ?>"><div class="hover-box tran-2s"></div> <h2 class="post-title txt-shadow"> <?php the_title(); ?> </h2></a> </div> <!--start meta--> <div class="box-content-meta"> <span class="meta-posts"><i class="fa fa-calendar-o"></i><?php echo get_the_date('d F Y', get_the_ID()); ?></span> <span class="meta-posts"><i class="fa fa-eye"></i><?php echo get_post_views (get_the_ID()); ?></span> <span class="meta-posts"><i class="fa fa-comments"></i><?php comments_popup_link('0', '1', '%'); ?></span> <span class="meta-posts"><a <?php echo isset($_COOKIE['post-'.get_the_ID()]) && intval($_COOKIE['post-'.get_the_ID()]) ? 'data-liked="1"' : 'data-liked="0"'; ?> href="#" data-pid="<?php echo get_the_ID(); ?>" class="like-post"><i class="fa fa-thumbs-up"></i><span><?php echo get_post_likes(get_the_ID()); ?></span></a></span> </div> <!--end meta--> <!--start excerpt--> <div class="excerpt"> <?php the_excerpt(); ?> </div> <!--end excerpt--> </div> <?php endwhile; else : ?> <p><?php _e( 'Sorry, no posts matched your criteria.' ); ?></p> <?php endif; ?> یعنی اگر $ppg = 1; غیر از این باشه مطالب تکراری لود میشه اگر هم 1 باشه باید برای نمایش مطالب بیشتر برای هر مطلب یک بار کلیک کرد که این کار خسته کننده است ممنون ویرایش شده اسفند 94 توسط reza_yki لینک به ارسال
پست های پیشنهاد شده
لطفا برای ارسال دیدگاه وارد شوید
شما بعد از اینکه وارد حساب کاربری خود شدید می توانید دیدگاهی ارسال کنید
ورود به حساب کاربری