Задать вопрос
@greedy_wizard

Проблема с плагином Polylang в AJAX фильтре?

Подскажите пожалуйста в чем может быть причина не правильной работы фильтра.
На сайте есть несколько языков.
Фильтр работает через AJAX.
На основном EN языке все ок. Фильтр работает верно. А вот на дополнительном RU при использовании фильтра, выводятся записи не только RU, но и с EN (обратил внимание, что когда залогинен, то через раз, в инкогнито выводятся только EN при выборе категории).

Ссылка на страницу
admin
stage

прописан код в functions.php
add_action('wp_ajax_filter_posts', 'enrlaw_filter_posts');
add_action('wp_ajax_nopriv_filter_posts', 'enrlaw_filter_posts');
function enrlaw_filter_posts() {
    echo '<pre>';
    echo '</pre>';

	$args = array(
        'post_type' => explode(" ", $_POST['postType']),
        'orderby' => 'date', // we will sort posts by date
        'order'	=> 'DESC', // ASC or DESC
        'paged' => get_query_var('paged'),
    );

    if(isset( $_POST['postCategory'] )) {
        $termsIDs = $_POST['postCategory'];

        $args['tax_query'] = array(
            array(
                'taxonomy' => 'publication_category',
                'field'    => 'id',
                'terms'    => $termsIDs,
				'operator' => 'AND'
            ),
        );
    }
    
    $query = new WP_Query($args);

    if($query->have_posts()) :
        echo '<div class="flex-container">';

        while($query->have_posts()) {
            $query->the_post();            

            echo '<div class="flex-xl-4 flex-lg-6 flex-xs-12">';
            get_template_part('template-parts/tpl', 'post-preview');
            echo '</div>';    
        }

        echo '</div>';
        
        if (  $query->max_num_pages > 1 ) : 
        ?>
            <button
                class="main-button main-button--center posts_loadmore"
                data-ajaxurl='<?php echo site_url('wp-admin/admin-ajax.php'); ?>' 
                data-query='<?php echo addslashes(json_encode($query->query_vars)); ?>' 
                data-current-page='<?php echo (get_query_var('paged')) ? get_query_var('paged') : 1; ?>' 
                data-max-pages='<?php echo $query->max_num_pages; ?>'
            >
                <?php _e('View more', 'enrlaw'); ?>
            </button>
        <?php
        endif;
    endif;
    wp_reset_postdata();
    wp_reset_query();

    die();
}
  • Вопрос задан
  • 112 просмотров
Подписаться 1 Простой 2 комментария
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы