如何在 json 中获取 wordpress 自定义 post 数据?
How to get wordpress custom post data in json?
在我的模板文件中,我像这样获取自定义 post 数据,
最初我获取 7 post,我需要在 post 下方创建一个阅读更多按钮,这将从 wp 数据库中获取更多 7 posts table,当有人点击它时。
但是我不知道怎么做,我想知道,
- 在 jquery get 方法中,php 文件我调用数据,
- 我将如何或在那个 php 文件中编写确切的脚本。
在这里我添加了一个粗略的想法,你可以如何编写你的代码:
在 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);
}
});
});
在我的模板文件中,我像这样获取自定义 post 数据,
最初我获取 7 post,我需要在 post 下方创建一个阅读更多按钮,这将从 wp 数据库中获取更多 7 posts table,当有人点击它时。
但是我不知道怎么做,我想知道,
- 在 jquery get 方法中,php 文件我调用数据,
- 我将如何或在那个 php 文件中编写确切的脚本。
在这里我添加了一个粗略的想法,你可以如何编写你的代码:
在 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);
}
});
});