Estoy un poco atascado en el uso de ajax+shortinit(para hacerlo más rápido).
Os pongo mi código:
En mi ajax.php tengo lo siguiente:
Código PHP:
Ver original
require_once ('../../../../wp-load.php'); require_once ('../../../../wp-includes/taxonomy.php'); require_once ('../../../../wp-includes/meta.php'); require_once ('../../../../wp-includes/post.php'); require_once ('../../../../wp-includes/user.php'); require_once ('../../../../wp-includes/pluggable.php'); require_once ('../../../../wp-includes/capabilities.php'); require_once ('../../../../wp-includes/comment.php'); require_once ('../../../../wp-includes/formatting.php'); require_once ('../../../../wp-includes/query.php'); require_once ('ajax-funciones.php'); switch($_POST["action"]){ case 'buscaPost': sacaPost($_POST["miPost"],$_POST["slug"]); }else{ echo "No hay variables"; } break; } }
Y en mi ajax-funciones.php tengo lo siguiente (la función sacaPost)
Código PHP:
Ver original
function sacaPost($idPost,$slugPost){ // Buscamos el contenido del post $objetoDatos = new WP_Query($query); if ($objetoDatos->have_posts()){ while($objetoDatos->have_posts()){ $objetoDatos->the_post(); echo get_the_content(); } wp_reset_postdata(); }else{ echo "any"; } }
He probado ya bastantes cosas pero siempre me devuelve "any" al hacer la llamada. La llamada la hago al hacer un click en una lista que tengo y la hago de la siguiente forma:
Código Javascript:
Ver original
jQuery.post(MyAjax.url,{action: 'buscaPost',miPost: miID,slug: miSlug},function(response){ jQuery("#contenido-conoceDerecha").html(response); jQuery("#contenido-conoceDerecha").show('fade'); });
Como véis la llamada es simple pero no se por qué el have_posts() siempre me está sacando como false, como si no existiese ninguna entrada cuando sí lo hay.
¿Qué puede ser el fallo?? Gracias!