reza_yki 103 ارسال شده در دی 97 گزارش بازنشر ارسال شده در دی 97 (ویرایش شده) سلام دوستان من می خوام مطالبم رو که کاربر قبلا انتخاب کرده که یکی از گذینه هاش اینه که آخرین مطالب باشه یا آخرین دسته خاص اون هم به صورت ای جکسی لود بشه (نکته: المنت برای ویژال کمپوزر نوشتم) اما من مشکلی که دارم اینه در صفحه A یک query نوشتم به شکل زیر : <?php $atts = vc_map_get_attributes('pl_block_3', $atts); extract($atts); global $ppp,$args,$atts_send; $atts_send = $atts; $posts_per_page = get_option('posts_per_page'); $args = array( 'post_type'=>'post', 'post_status' => 'publish', 'ignore_sticky_posts' => 1 ); if ($atts['offset']) { $args = wp_parse_args( array( 'offset' => $atts['offset'], ) , $args ); } if ($atts['orderby'] == 'most-recent') { $paged = is_front_page() ? get_query_var( 'page', 1 ) : get_query_var( 'paged', 1 ); $args = wp_parse_args( array( 'posts_per_page' => $posts_per_page, 'paged' => $paged ) , $args ); } else if ($atts['orderby'] == 'by-category') { if (!empty($atts['category_id'])) { $paged = is_front_page() ? get_query_var( 'page', 1 ) : get_query_var( 'paged', 1 ); $cats = explode(',',$atts['category_id']); $args = wp_parse_args( array( 'posts_per_page' => $posts_per_page, 'category__in' => $cats, 'paged' => $paged ) , $args ); } } else if ($atts['orderby'] == 'by-author') { $paged = is_front_page() ? get_query_var( 'page', 1 ) : get_query_var( 'paged', 1 ); $post_author_array = explode(',', $atts['author_id']); $args = wp_parse_args( array( 'posts_per_page' => $posts_per_page, 'author__in' => $post_author_array, 'paged' => $paged ) , $args ); } $posts = query_posts( $args ); ob_start(); get_template_part('framework/vc_templates/content/loop/main'); $out = ob_get_contents(); if (ob_get_contents()) ob_end_clean(); wp_reset_query(); wp_reset_postdata(); return $out; و در صفحه main کار رو به این شکل ادامه دادم: <?php global $ppp,$args,$atts_send; $atts = $atts_send; $posts_per_page = get_option('posts_per_page'); $page = intval($_POST['page']); $data_style = intval($_POST['data_style']); $data_order = ($_POST['data_order']); if ($ppp == 0) $ppp = $data_style; if ($page == 0) $page = 1; $offset = ($page - 1) * $posts_per_page; $ajax_args = array( 'posts_per_page' => $posts_per_page, 'offset' => $offset ); $args = wp_parse_args( $args, $ajax_args ); $posts = query_posts( $args ); print_r($args) ; get_template_part('framework/vc_templates/content/loop/homepage-content-' . $ppp); وقتی صفحه برای اولین بار لود میشه print_r که برای $args گرفتم خروجی زیر رو تولید میکنه:(تا اینجا مشکلی نیست و همچی درست کار میکنه) <?php Array ( [posts_per_page] => 2 [offset] => 0 [post_type] => post [post_status] => publish [ignore_sticky_posts] => 1 [paged] => 1 ) ?> ولی وقتی دکمه بیشتر رو برای لود مطالب بیشتر می زنم این خروجی چاپ میشه: <?php Array ( [posts_per_page] => 2 [offset] => 2 ) ?> در صفحه ایجکس هم کاری زیادی نکردم فقط صفحه main رو فراخوانی کردم: <?php add_action('wp_ajax_recent_posts', 'recent_posts'); add_action('wp_ajax_nopriv_recent_posts', 'recent_posts'); function recent_posts() { get_template_part('framework/vc_templates/content/loop/main'); die(); } ?> حالا سوال اینجاست من چطوری می تونم اطلاعات صفحه A رو به صفحه main بفرستم در هنگام لود ایجکسی؟ ویرایش شده دی 97 توسط reza_yki لینک به ارسال
پست های پیشنهاد شده
لطفا برای ارسال دیدگاه وارد شوید
شما بعد از اینکه وارد حساب کاربری خود شدید می توانید دیدگاهی ارسال کنید
ورود به حساب کاربری