亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

通過AJAX顯示字壓最后的帖子

通過AJAX顯示字壓最后的帖子

PHP
蠱毒傳說 2022-09-17 15:37:16
我正在建立一個每小時上傳一次帖子的新聞博客。我創建了一個短代碼,在主頁上顯示最后15個帖子。我的問題是服務器緩存需要每小時刪除一次。所以我決定通過AJAX提供帖子,所以這個區域將獲得每個頁面加載的最新帖子。我找到了這個答案,并將其與我的代碼相結合。我的問題是它顯示所有帖子,而不僅僅是15個。菲律賓比索:function get_ajax_posts() {// Query Arguments    $args = array(    'post_type' => array('post'),    'post_status' => array('publish'),    'posts_per_page'  => 15,    'nopaging' => true,    'order'    => 'DESC',    'orderby'    => 'date',    );    $ajaxposts = new WP_Query( $args );    $response = '';    if ( $ajaxposts->have_posts() ) {            while ( $ajaxposts->have_posts() ) {                $ajaxposts->the_post();                $response .= get_template_part( 'template-parts/content-archive');            }   }    else {             $response .= get_template_part('none');     }    echo $response;        exit; // leave ajax call}// Fire AJAX action for both logged in and non-logged in usersadd_action('wp_ajax_get_ajax_posts', 'get_ajax_posts');add_action('wp_ajax_nopriv_get_ajax_posts', 'get_ajax_posts');斷續器 $.ajax({    type: 'POST',    url: '<?php echo admin_url('admin-ajax.php');?>',    dataType: "html",    data: { action : 'get_ajax_posts' },    success: function( response ) {        $( '.home-hot-flights' ).html( response );           //hot-flights        var hot_flights_item = $(".home-hot-flights article").width() + 17;        $(".art-move-left").click(function () {           $('.move-right').addClass('show-move-right');          var leftPos = $('.home-hot-flights').scrollLeft();          $(".home-hot-flights").animate({scrollLeft: leftPos - hot_flights_item}, 200);        });        $(".art-move-right").click(function () {           var leftPos = $('.home-hot-flights').scrollLeft();          $(".home-hot-flights").animate({scrollLeft: leftPos + hot_flights_item}, 200);        });    }});
查看完整描述

2 回答

?
繁星淼淼

TA貢獻1775條經驗 獲得超11個贊

這可能有助于您:

分頁參數

(nopping(布爾值) – 顯示所有帖子或使用分頁。默認值為“false”,請使用分頁。)

通過禁用分頁來顯示所有帖子:

$query = new WP_Query( array( 'nopaging' => true ) );

我認為如果要使用顯示一定數量的帖子,則應刪除該參數。posts_per_page


查看完整回答
反對 回復 2022-09-17
?
狐的傳說

TA貢獻1804條經驗 獲得超3個贊

試試這段代碼 我已經編輯了你的代碼 請看下面


function get_ajax_posts() {

// Query Arguments

$args = array(

'post_type' => array('post'),

'post_status' => array('publish'),

'posts_per_page'  => 15,

'order'    => 'DESC',

'orderby'    => 'date',

);

wp_reset_query();

$ajaxposts = new WP_Query( $args );

$response = '';


if ( $ajaxposts->have_posts() ) {

        while ( $ajaxposts->have_posts() ) {

            $ajaxposts->the_post();

            $response .= get_template_part( 'template-parts/content-archive');

        }

 }    else {

         $response .= get_template_part('none');

 }


echo $response;

    exit; // leave ajax call

}


// Fire AJAX action for both logged in and non-logged in users

  add_action('wp_ajax_get_ajax_posts', 'get_ajax_posts');

  add_action('wp_ajax_nopriv_get_ajax_posts', 'get_ajax_posts');

如果兩個循環數據被覆蓋,那么,我的第一個代碼wp_reset_query()是不正確的。如果您使用的是WP_Query,那么


wp_reset_postdata() //remove wp_reset_query() which is used for wp_query()

應該在 WHILE 循環結束后使用,這意味著在兩個循環中,您必須具有


wp_reset_postdata()  // use this at both loops


查看完整回答
反對 回復 2022-09-17
  • 2 回答
  • 0 關注
  • 146 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號