如何在 json 中获取 wordpress 自定义 post 数据?

How to get wordpress custom post data in json?

在我的模板文件中,我像这样获取自定义 post 数据,

最初我获取 7 post,我需要在 post 下方创建一个阅读更多按钮,这将从 wp 数据库中获取更多 7 posts table,当有人点击它时。

但是我不知道怎么做,我想知道,

在这里我添加了一个粗略的想法,你可以如何编写你的代码:

在 function.php 中创建一个 ajax 函数,并通过 ajax 调用将偏移值传递给它,并将接收到的数据附加到您的显示部分。

这里是一个创建 ajax 函数的例子:

add_action('wp_ajax_nopriv_cyt_ajax_search','cyt_ajax_search');
add_action('wp_ajax_cyt_ajax_search','cyt_ajax_search');
function cyt_ajax_search(){


    $offset = $_POST['offset'];

    $args = array (
    'post_type' => 'post',
    'posts_per_page' =>7
    'offset'=>$offset,

    'meta_query' =>..........

    );
$query = new WP_Query($args);
if($query->have_posts() ) : 
        while ( $query->have_posts() ) : $query->the_post(); 


endwhile; 

wp_reset_postdata();
endif; 


}

//前端代码,点击按钮会调用ajax函数并传递偏移值,每次点击需要增加7(以防加载7[=仅 31=])并检查还剩多少 post,如果偏移值超过了 wp 查询要显示的总计数数据的数量,则只需隐藏按钮

<div id ="esiSection"></div>

<span click="loadmore" data-offset='0'>Click here</span>  

jQuery('.loadmore').click(function(){ 
var offset = parseInt(jQuery(this).attr('data-offset'));
jQuery.ajax({    
   url: '<?php echo admin_url('admin-ajax.php'); ?>',
   type: 'POST',    
   data: { 
    'action' : 'cyt_ajax_search',  
    'offset' : offset ,
   },
  success: function(response) {
  
   jQuery('#resiSection').append(response);
   offset = offset + 7;
 
   
  },
  error: function(error){
   console.log(error);
   
  }
    
 }); 
 
});