Вопрос: Избегайте повторного сообщения на странице 2, исключая одно на странице 1

На разрабатываемом сайте Ajax /JavaScript активируется бесконечная прокрутка.

$('#inifiniteLoader').show('fast');$.ajax({    url: "<?php bloginfo('wpurl') ?>/wp-admin/admin-ajax.php",    type:'POST',    data: "action=infinite_scroll&cat='<?php echo $cat_id ?>'&exclude='<?php         echo get_the_ID() ?>'&page_no="+ pageNumber + '&loop_file=loop',     success: function(html){        $('#inifiniteLoader').hide('1000');        $("#primary").append(html); //This will be the div where our content will be loaded    }});

На сайте в целом это работает, но на одной странице, где отображается сообщение, а затем все остальные сообщения в этой категории (кроме сообщения) в виде миниатюр, существует проблема.

WP_Query исключает сообщение, о котором идет речь:

$args = array ( 'cat' => $catId, 'post__not_in' => $postid );$custom_query = new WP_Query( $args ); 

Это также работает, но разбиение на страницы не работает.

Пример: Список профессоров

Сетка должна показывать 8 страниц на странице. 3 на нижней странице формы 2. Когда вы нажимаете на миниатюру и вводите сообщение, большие пальцы (кроме текущего) повторяются. Как видите, что-то идет не так с нумерацией страниц, потому что текущая страница исключена, на первой странице отображается страница со страницы 2. А затем это первая запись на странице 2, в результате чего появляются двойные записи.

Если я изменю loop.php , чтобы пропустить первый пост, отображаются только семь, а сетка не заполняется.

Запрос в функциях выглядит так, а также исключает текущее сообщение:

function wp_infinitepaginate() {    $loopFile       = $_POST['loop_file'];    $paged          = $_POST['page_no'];    $cats           = $_POST['cat'];    $exclude        = $_POST['exclude'];    $posts_per_page = get_option( 'posts_per_page' );    $showposts = $posts_per_page;    $offset = ( ( $showposts * $paged ) - $showposts );    $args = array(        'cat'            => $cats,        'posts_per_page' => $showposts,        'offset'         => $offset,        'post__not_in'   => array( $exclude ),    );    # Load the posts    //query_posts( array( 'paged' => $paged ) );    query_posts( $args );    get_template_part( $loopFile );    wp_reset_query();       exit;}

Есть советы?

Ответы и комментарии:

Можете ли вы опубликовать обработчик PHP AJAX для infinite_scroll
Создан 17-09-2015 12:18 TheDeadMedic

Убедитесь, что идентификатор исключения, передаваемый обработчику AJAX, является идентификатором первого сообщения, а не главной страницы (get_the_ID () вполне может печатать идентификатор страницы).
Создан 17-09-2015 12:52 TheDeadMedic

Я обнаружил, что это работает, если я пишу номер поста в обработчике AJAX вручную: 'post__not_in' => array (3067), поэтому либо обработчик не получает правильный идентификатор исключения, либо форматирующий массив 'post__not_in' => ($ exclude), не так?
Создан 17-09-2015 12:18 Eirik

Что плохого в том, что аргументы отправляются обработчику AJAX - то есть части <? Php echo get_the_ID ()?>.
Создан 17-09-2015 12:01 TheDeadMedic

но если я взгляну на html-источник, он, например, скажет: data: "action = infinite_scroll & cat = '42' & exclude = '3067' & page_no =" + pageNumber + '& loop_file = loop', и это правильный идентификатор, так что это что должен видеть AJAX? это правильный идентификатор.
Создан 17-09-2015 12:54 Eirik

Благодарю. Я удалил одинарные кавычки в строке параметров, чтобы она читалась ... & exclude = <? Php echo get_the_ID ()?> & ... Я предполагаю, что параметр был указан как строка, и поэтому массив не состоял из необходимых номера.
Создан 17-09-2015 12:52 Eirik

У вас есть одинарные кавычки в строке параметров - вместо этого используйте объект для ясности:
$ .Ajax ({
    данные: {
        действие: "infinite_scroll",
        cat: "<? php echo $ cat_id?>",
        исключить: "<? php the_ID ()?>",
        page_no: pageNumber,
        loop_file: "loop"
    }
});
Создан 17-09-2015 12:34 TheDeadMedic30.7k44169

У меня 2 таких же телефонов, и как вы можете видеть из второго, она холодная по сравнению с первым: imgur.com/a/59u13EG. 7/10 ядер находятся в автономном режиме, и другие работают достаточно низкая, не приложение не использует более 2%-3% процессора.
Создан 21-10-2018 05:30 Davor

вы недавно обновили свой телефон, похожий на проблему с программным обеспечением, и PLS также проверяет использование cpu другими приложениями и проверяете, являются ли результаты одинаковыми или разными.
Создан 21-10-2018 05:13 Bhavuk Sharma

здесь, в моем случае, оба приложения показывают разные результаты
Создан 21-10-2018 05:52 Bhavuk Sharma

Несколько вещей:

Приложения, которые показывают запущенные процессы, могут показывать только пользовательские процессы (что означает отсутствие процессов ядра)
Android уделяет больше внимания приложению на переднем плане (тот, который вы сейчас видите). Когда вы открываете диспетчер задач, другие процессы закрываются. Измерение, которое вы пытаетесь сделать, влияет на результаты.

Если вы можете предоставить более подробную информацию, измеряя извне один из них:

Попробуйте установить Android Studio:
Опубликуйте результаты журнала Cat:
Или используйте Android Debug Bridge (adb) с adb logcat - вы можете просмотреть журнал своего Android-устройства.

С помощью одного из них вы можете профилировать свой Android-телефон через USB-соединение.
Я не думаю, что кто-то может дать вам полный прямой ответ без какой-либо дополнительной информации, за исключением того, что, возможно, у них был тот же самый номер модели и проблема.
Создан 28-10-2018 09:12 VeRo1112


глядя, как вы находитесь на китайский вариант RN4 с MediaTek дека-ядерный процессор
Если вы чувствуете, что ваш телефон использует слишком много ресурсов процессора, чем это не образ случае показывает загрузку процессора на ASUS zenfone Max про М1]1
здесь вы можете взглянуть на моем устройстве процессора. все 8 ядер работают на высокой частоте, но все равно я получаю огромное резервной батареи. так что наверняка это не выглядит как проблема в ЦП.
вы можете попробовать перезагрузить устройство, или можете принять помощь от компании Xiaomi помощи.
Создан 21-10-2018 04:13 Bhavuk Sharma12