Я пытаюсь написать простой плагин Wordpress, который обновляет значение настраиваемого поля и увеличивает его на единицу, а затем выводит результат, который возвращается в мой код JavaScript. По некоторым причинам к данным, возвращаемым функцией обратного вызова, всегда добавляется дополнительный 0 в конце.
function like_post_callback() {
$clicked = $_POST['clickedOn'];
$id = $_POST['postID'];
if($clicked == 0) $key = "like";
else $key = "reallyLike";
$prevLikes = get_post_meta($id, $key, true); //true, so we only return a single value
$likes = 1;
if($prevLikes == ""){
add_post_meta($id, $key, $likes);
} else{
$likes = $prevLikes + 1;
update_post_meta($id, $key, $likes);
}
echo $likes;
}
А вот как это называется:
$.post("<?php bloginfo( 'wpurl' ); ?>/wp-admin/admin-ajax.php",
{ action: "like_post", clickedOn: which, postID: "<?php the_ID(); ?>"}, function(data){
alert(data);
$("#" + clicked).html(text + " (" + data + ")");
});
Все работает, у меня просто почему-то есть лишние 0 в данных, и я не знаю, откуда они.