на данный момент моя тема Я загружаю сообщения с помощью AJAX. Но как я могу получить также мета-ключи почты через AJAX?Загрузка Wordpress metakeys с AJAX
В данный момент функции PHP выглядит так:
add_action('wp_ajax_nopriv_ajax_action', 'ajax_loading');
add_action('wp_ajax_ajax_action', 'ajax_loading');
function ajax_loading() {
switch($_REQUEST['fn']) {
case 'get_latest_posts':
$output = ajax_get_latest_posts($_REQUEST['count']);
break;
default:
$output = 'Error. No function specified.';
break;
}
$output = json_encode($output);
if (is_array($output)) {
print_r($output);
}
else {
echo $output;
}
die;
}
function ajax_get_latest_posts($count) {
$posts = get_posts('numberposts='.$count.'&post_status=publish');
return $posts;
}
И JQuery:
$.ajax({
url: 'http://domain.com/wp-admin/admin-ajax.php',
type: 'POST',
data: {
'action': 'ajax_action',
'fn': 'get_latest_posts',
'count': 15
},
dataType: 'JSON',
success:function(data){
//print stuff here
},
error: function(errorThrown){
//error stuff here
}
})
С этим кодом я только получить основную информацию после (название, идентификатор, дата, содержание .. .).
Так кто-нибудь пытался получить мета ключи/значения с помощью AJAX/JS из сообщений?
Хм, это дает сообщение об ошибке: Не удается использовать объект типа WP_Post как массив. Это для этой строки: $ posts [$ key] ['meta'] = get_post_meta ($ post-> ID); – user995317
Извините, у меня нет приложения Wordpress, чтобы проверить его. вероятно, должно быть '$ posts [$ key] -> meta = get_post_meta ($ post-> ID);' поскольку $ posts - это массив объектов WP, а не массивы – yoavmatchulsky
Действительно, я должен был подумать об этом. Это работало. Большое спасибо! – user995317