رفتن به مطلب

دسترسی یا ارسال یک Query Args خاص به صفجه دیگر


پست های پیشنهاد شده

سلام دوستان من می خوام مطالبم رو که کاربر قبلا انتخاب کرده که یکی از گذینه هاش اینه که آخرین مطالب باشه یا آخرین دسته خاص اون هم به صورت ای جکسی لود بشه (نکته: المنت برای ویژال کمپوزر نوشتم)

اما من مشکلی که دارم اینه در صفحه 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 بفرستم در هنگام لود ایجکسی؟

ویرایش شده توسط reza_yki
لینک به ارسال

لطفا برای ارسال دیدگاه وارد شوید

شما بعد از اینکه وارد حساب کاربری خود شدید می توانید دیدگاهی ارسال کنید



ورود به حساب کاربری
×
×
  • اضافه کردن...