رفتن به مطلب

دسترسی یا ارسال یک 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
لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...